嗯尝试创建一个文件名为pdf的文件,如下所示
Hello 1115 Apple Mango 27.08.2015 00:00:00.pdf
运用
var tempFileName = Fruit.Name + " " + numberName + " " + DateTime.Now.Date.ToString() + ".pdf";
var pdfFile = Path.Combine(Path.GetTempPath(), tempFileName);
System.IO.File.WriteAllBytes(pdfFile, Pdfcontent.GetBuffer());
请注意我的文件名包含空格,如果我创建一个没有空格的文件名,它将生成一个没有任何问题的文件
由于它包含空格,因此会引发异常 {"The given path's format is not supported."}
生成的文件路径看起来像这样 C:\Users\Sansa\AppData\Local\Temp\Hello 1115 Apple Mango 27.08.2015 00:00:00.pdf
如何解决这个问题
2 回答
问题不在于空间 . 有一些符号在命名时有所不同:
<
,>
,:
,"
,/
,\
,|
,?
,*
. 您也可以在MSDN上查看naming files and folders的规则 .您可以通过将此符号替换为允许来解决此问题 . 在您的情况下,您可以使用简单的
replace
:但更好的是获取所有不允许的符号并使用正则表达式来防止使用它们:
如果您选择第二个变体,请不要忘记在文件中添加名称空间:
文件名中不允许
:
. 你可以删除它们 .如果需要,您也可以用下划线
_
替换空格 .