文件名检查无效

Joe*_*isk 0 c#

我有一个string存储文件名并用于SaveFileDialog.在将文件名分配给FileName属性之前,我需要确保文件名有效(例如,不包含斜杠)SaveFileDialog.我的问题是:在分配文件名之前,是否有快速确保文件名有效的方法?

例:

string fileName = fileNameTextBox.Text;
//Some code here to check validity of fileName
if(fileNameIsValid)
{
  saveFileDialog.FileName = fileName;
}
Run Code Online (Sandbox Code Playgroud)

Dou*_*rch 5

这个问题已经被 很多 之前,正如之前多次指出,IO.Path.GetInvalidFileNameChars是不够的.

首先,有许多名称,如PRN和CON,这些名称是保留的,不允许用于文件名.还有其他名称不允许仅在根文件夹中.也不允许以句点结尾的名称.

其次,存在各种长度限制.在这里阅读NTFS的完整列表.

第三,您可以附加到具有其他限制的文件系统.例如,ISO 9660文件名不能以" - "开头,但可以包含它.

找到文件名无效的唯一方法是尝试保存它并查看它是否抛出异常.


归档时间:

查看次数:

1100 次

最近记录:

12 年,3 月 前