无法将列表的所有元素保存到文本文件

Unable to Save all the elements of a List to a text file

我想将一个列表的所有内容保存到一个文本文件中,但我做不到。下面是我试过的代码

 // here is my list type 
 List<string> list2 = new List<string>();

 //code below for saving the contents of the list into text file 
 string file = @"C:\Users\textWriter.txt";
        // check if the file exists
        try
        {
            if (File.Exists(file))
            {
                File.Delete(file);
            }
            else
            {
                using (TextWriter tw = File.CreateText(@"SavedList.txt"))
                {
                    foreach (String s in list2)
                        tw.WriteLine(s);
                }
            }
        }
        catch (Exception Op)
        {
            MessageBox.Show(Op.Message);
        } 

不确定有什么例外,但我强烈建议改用它:

File.WriteAllLines(file, list2);

如果目标文件已经存在,则覆盖。

文档:File.WriteAllLines


在您的代码中您使用了不同的路径,也许这就是原因

您在 (File.Exists(文件) 和 File.CreateText(@"SavedList.txt") 中有不同的路径。 接下来,你在List中添加元素了吗?

问题已解决。通过@Tim Schmelter 建议的更新代码以及此 link C# access to the path is denied...(System.UnauthorizedAccessException: Access to the path 'C:\' is denied.) 的帮助,我现在可以看到包含所有内容的文件。

 string file = @"D:\textWriter.txt";
        // check if the file exists
        try
        {
            if (File.Exists(file))
            {
                File.Delete(file);
            }
            else
            {
                File.WriteAllLines(file, list2);
            }
        }
        catch (Exception Op)
        {
            MessageBox.Show(Op.Message);
        }