Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
铁路超高';查看我用StreamWriter创建的文件。C#_C#_File_Io_Directory_Save - Fatal编程技术网

铁路超高';查看我用StreamWriter创建的文件。C#

铁路超高';查看我用StreamWriter创建的文件。C#,c#,file,io,directory,save,C#,File,Io,Directory,Save,我是个新手。 我创建了一个StreamWriter对象来创建一些文本并将其保存在文件中。 文章是这样写的: StreamWriter two = new StreamWriter(@"C:\two.txt", true); two.WriteLine("Some Stuff"); two.Close(); 然后我还添加了一个StreamReader对象,以便程序在控制台上显示文件的内容: StreamReader two2 = new StreamReader(@"C:\two.txt");

我是个新手。 我创建了一个StreamWriter对象来创建一些文本并将其保存在文件中。 文章是这样写的:

StreamWriter two = new StreamWriter(@"C:\two.txt", true);
two.WriteLine("Some Stuff");
two.Close();
然后我还添加了一个StreamReader对象,以便程序在控制台上显示文件的内容:

StreamReader two2 = new StreamReader(@"C:\two.txt");                                                        
Console.WriteLine(two.ReadToEnd());
two2.Close();
每次运行该程序时,控制台上的输出都是正确的,WriteLine方法中的文本都会被追加。然而,如果我使用Windows文件资源管理器访问C:的话,文件two.txt就不存在了

档案在哪里


另外,如果我更改了文件的保存地址,比如说E:例如,一切都很完美,我可以通过Windows文件资源管理器在E:中查看文件。因此,显然C有一些特殊之处:继续。

对于C驱动器,存在一些安全限制,您最好使用用户AppData文件夹来创建sving文件在关闭写入文件之前始终使用Flush()方法来确保所有数据都已写入。我更愿意说,始终使用语句将流和读卡器等IDisposable资源包装在
中。C:驱动器的根目录受UAC保护。应该发生的是,Windows识别出您的程序与UAC兼容,您将得到一个IOException。但显然不是这样,文件被重定向到%appdata%中的安全位置。似乎您以一种不寻常的方式构建了您的程序,但它没有正确的清单。那是怎么发生的是不可能猜测的。我想,不要拿舱单开玩笑。并使用Environment.GetFolderPath()获取更好的目录进行写入。@HansPassant我刚刚使用默认设置在Visual Studio的调试模式下运行了应用程序。对于c驱动器,存在一些安全限制,您最好使用用户AppData文件夹进行sving文件始终使用Flush()方法,以确保所有数据都已写入。我更愿意说,始终使用
语句将流和读取器等IDisposable资源包装在
中。C:驱动器的根目录受UAC保护。应该发生的是,Windows识别出您的程序与UAC兼容,您将得到一个IOException。但显然不是这样,文件被重定向到%appdata%中的安全位置。似乎您以一种不寻常的方式构建了您的程序,但它没有正确的清单。那是怎么发生的是不可能猜测的。我想,不要拿舱单开玩笑。并使用Environment.GetFolderPath()获取更好的目录以写入。@HansPassant我刚刚使用默认设置在Visual Studio的调试模式下运行了应用程序。