VB.NET项目保存含时间戳文件名图片报错:路径格式不支持
解决VB.NET文件保存路径格式不支持的问题
嘿,这个报错的原因很明确——你生成的文件名里包含了Windows系统不允许出现在文件名中的特殊字符:/和:。这俩字符在Windows里是用来分隔路径、标识驱动器或者作为时间分隔符的,绝对不能放进文件名里。
给你两个关键的修改点,直接解决问题:
1. 替换非法的时间格式字符
把你生成时间字符串的格式里的/和:换成合法的字符,比如-或者.,这样生成的文件名就符合规则了。
2. 修正代码里的小细节
另外注意你原代码里的一个小矛盾:你指定保存格式是Bmp,但文件名后缀写的是.jpg,虽然系统大概率能识别,但最好统一格式避免混淆;还有VB.NET里拼接字符串建议用&而非+,+在处理不同类型时容易出问题。
修改后的完整代码如下:
' 生成合法的时间字符串,用-替换/和: Dim mydataandtimeforsave = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss") ' 拼接桌面路径并保存,统一后缀和格式为Bmp(或者改成Jpeg格式对应.jpg后缀) PB1.Save(My.Computer.FileSystem.SpecialDirectories.Desktop & "\MDAL1Image_" & mydataandtimeforsave & ".bmp", System.Drawing.Imaging.ImageFormat.Bmp)
额外提一句:Windows文件名禁止的字符总共有这些:<, >, :, ", /, \, |, ?, *,以后生成文件名的时候记得避开这些哦。
内容的提问来源于stack exchange,提问作者bluemoon odd
相关产品推荐
相关产品推荐

