C#无法打开名为CON.DE.txt的文件?

时间:2017-01-23 19:23:20

标签: c# .net

当我尝试打开名为CON.txt的txt文件时,我在C#中遇到了一个奇怪的问题。我想为CON.DE符号存储雅虎财务数据。

using System.IO;

namespace Test
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            File.Open("CON.DE.txt", FileMode.Create);
        }
    }
}

Visual Studio抛出异常并说:

  

FileStream不会打开Win32设备,如磁盘分区和   磁带机。避免在路径中使用“\。\”。

这是.NET Framework或Win32中的错误吗?有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

CON似乎是Windows保留的一个关键字,可以追溯到MS-DOS时代(但至今保留至今)。

一种解决方案是用另一个字符(例如CON-DE.txt或等效字符)替换'CON'和'DE'之间的句号。

有关保留的MS-DOS设备驱动程序名称的完整列表,请参阅:https://support.microsoft.com/en-gb/help/74496/ms-dos-device-driver-names-cannot-be-used-as-file-names