使用 ReadAllLines C# 时未处理 DirectoryNotFoundException

DirectoryNotFoundException was unhandled while the use of ReadAllLines C#

下面这段代码是用来调用.txt-file并将其转成字符串的代码。

string[] lines = System.IO.File.ReadAllLines(@"C:\This PC\Documents\Visual Studio 2015\Projects\test_read_txt\bin\Debug\read.txt");

为什么 C# 无法识别 .txt-file 的位置? 我尝试使用 StreamReader 但无法修改读取。

class Program
{
    static void Main(string[] args)
    {
        // Define our one and only variable
        string[] M = new string[13];

        // Read the text from the text file, and insert it into the array
        StreamReader SR = new StreamReader(@"read.txt");

        for (int i = 0; i < 13; i++)
        {
            M[i] = SR.ReadLine();
        }

        // Close the text file, so other applications/processes can use it
        SR.Close();

        // Write the array to the Console

        Console.WriteLine("The array from the txt.file: ");


        for (int i = 0; i < 13; i++)
        {
            Console.WriteLine(M[i]); // Displays the line to the user
        }

        // Pause the application so the user can read the information on the screen
        Console.ReadLine();

        if (2 == 2)
        {
            M[1][1] = 1;
        }
    }
}

它没有将M[1][1]识别为第二个数组的第二个元素,因为它只是读取文件并没有将其转换为多维数组。以下代码可以用于上述问题吗?

tring[] lines = System.IO.File.ReadAllLines(@"C:\This PC\Documents\Visual Studio 2015\Projects\test_read_txt\bin\Debug\read.txt");

"C:\This PC\Documents" 只是一个显示路径(因为它实际上并不存在),这实际上等同于 "C:\Users\{username}\Documents"

如用户所述,"This PC"只是一个显示路径,并非真实路径。

试试改用这个:

    string path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), @"Visual Studio 2015\Projects\test_read_txt\bin\Debug\read.txt");
    string[] lines = File.ReadAllLines(path);

C:\这个PC\Documents不是正确的路径

获取正确文件路径的最简单方法是 转到文件属性 > 安全 > 对象名称