Специальные символы в пути к файлу: Символ косой черты

Я работаю с файлами. И используйте такой код:

 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 ответ

Решение

Ну, ты не можешь.

/ символ недопустим в foldernames или именах файлов в Windows.

Вместо этого вам придется выбрать другого персонажа, который является законным.

Вы можете прочитать больше об этих вещах в этой статье MSDN: Имена файлов, путей и пространств имен:

Используйте любой символ в текущей кодовой странице для имени, включая символы Юникода и символы в расширенном наборе символов (128–255), за исключением следующих зарезервированных символов:
< (меньше, чем)
> (лучше чем)
: (двоеточие)
" (двойная кавычка)
/ (косая черта)
\ (Обратный слэш)
| (вертикальная черта или труба)
? (вопросительный знак)
* (Звездочка)
+ некоторые другие детали

Другие вопросы по тегам