文件路径上的特殊字符:斜线符号

时间:2016-06-09 12:30:29

标签: c# pdf filestream slash pdf-writer

我处理文件。并使用这样的代码:

 PdfWriter.GetInstance(newFile, new FileStream(WebConfigurationManager.AppSettings["StorageFolder"] + "\\" + DateTime.Now.Year.ToString() + "\\fnp\\request_" + myVariable+ "_l" + confirmLevel.ToString() + ".pdf", System.IO.FileMode.Create));

此行生成我文件的完整路径。例如,如果myVariable="0001"则可以。所以newFile的完整路径就像是StorageFolder \ 2016 \ fnp \ request_0001_l2.pdf。但我想指定myVariable值,如myVariable = "0001/16"。然后 PdfWriter.GetInstance 方法尝试创建类似StorageFolder \ 2016 \ fnp \ request_0001 \ 16_l2.pdf的路径。但我需要它来创建StorageFolder \ 2016 \ fnp \ request_0001 / 16_l2.pdf。

我该如何管理它?

1 个答案:

答案 0 :(得分:0)

嗯,你做不到。

/字符在Windows上的foldernames或文件名中不合法。

你必须选择另一个角色,一个合法的角色。

您可以在此MSDN Article: Naming Files, Paths, and Namespaces中了解有关这些内容的更多信息:

  

使用当前代码页中的任何字符作为名称,包括扩展字符集(128-255)中的Unicode字符和字符,但以下保留字符除外:
  <(小于)
  >(大于)
  :(冒号)
  "(双引号)
  /(正斜杠)
  \(反斜杠)
  |(竖杆或竖管)
  ?(问号)
  *(星号)
  +其他一些细节