C#:保存图像错误
C#: Save image error
我正在尝试保存一张新图片,但是 C# 给我一个如下图所示的错误
错误参考以下代码
string oldfilename = valid.getStringBeforeAnyChar(fi.Name, '.'); //"1"
string newfilename = FolderDir + "\" + subfolderoutput + "\" + oldfilename + Copyright + fi.Extension;
//"C:\Users\RHIT ! Solution\Desktop\direktori\Output\1[Watermarked by : RHIT Watermarker ].png"
try
{
imgPhoto.Save(newfilename, ImageFormat.Jpeg); // <-- error here
imgPhoto.Dispose();
imgWatermark.Dispose();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
我哪里错了?如何解决这个问题?我不知道创建新文件的 output
文件夹限制
几乎可以肯定 newFileName
有问题。您可以在调试器中查看此值,以了解预期的文件名和路径可能有什么问题。
不过,作为一般性建议,最好使用 Path.Combine()
将目录和文件名组合到一个路径中,这样可以解决很多潜在问题,例如重复或缺少“\”。
Windows 文件路径不支持冒号 (:
) 字符,以及其他几个文件名字符:
总而言之;无效字符是:
<
(小于)
>
(大于)
:
(冒号)
"
(双引号)
/
(正斜杠)
\
(反斜杠)
|
(竖条或管道)
?
(问号)
*
(星号)
反斜杠 (\
) 字符仅在用作 folder/directory 分隔符时才可能出现。
我正在尝试保存一张新图片,但是 C# 给我一个如下图所示的错误
错误参考以下代码
string oldfilename = valid.getStringBeforeAnyChar(fi.Name, '.'); //"1"
string newfilename = FolderDir + "\" + subfolderoutput + "\" + oldfilename + Copyright + fi.Extension;
//"C:\Users\RHIT ! Solution\Desktop\direktori\Output\1[Watermarked by : RHIT Watermarker ].png"
try
{
imgPhoto.Save(newfilename, ImageFormat.Jpeg); // <-- error here
imgPhoto.Dispose();
imgWatermark.Dispose();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
我哪里错了?如何解决这个问题?我不知道创建新文件的 output
文件夹限制
几乎可以肯定 newFileName
有问题。您可以在调试器中查看此值,以了解预期的文件名和路径可能有什么问题。
不过,作为一般性建议,最好使用 Path.Combine()
将目录和文件名组合到一个路径中,这样可以解决很多潜在问题,例如重复或缺少“\”。
Windows 文件路径不支持冒号 (:
) 字符,以及其他几个文件名字符:
总而言之;无效字符是:
<
(小于)>
(大于):
(冒号)"
(双引号)/
(正斜杠)\
(反斜杠)|
(竖条或管道)?
(问号)*
(星号)
反斜杠 (\
) 字符仅在用作 folder/directory 分隔符时才可能出现。