您好我想创建一个程序,将文件保存到我的文档\ test。 该文件是.exe。由于某些未知原因,我得到一个拒绝访问错误,当我测试程序试图保存.txt文件(使用StreamWriter)时,程序工作没有任何问题。 请帮帮我。
以下代码会抛出错误
byte[] myfile = Properties.Resources.WallPaper;
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
string path2 = path + @"\" + "test";
System.IO.Directory.CreateDirectory(path2);
File.WriteAllBytes(path2, myfile);
保存.txt文件时,下面的代码可以正常工作
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
string path2 = path + @"\" + "test";
System.IO.Directory.CreateDirectory(path2);
StreamWriter file = new StreamWriter(path2 + @"\" + "text.txt");
答案 0 :(得分:2)
你的两个例子不一样。您的第一个示例不起作用,因为System.IO.Directory.CreateDirectory
已经创建了名为test
的目录。您无法覆盖该目录,就像它是一个文件一样。为了使您的示例1表现得像示例二:
System.IO.Directory.CreateDirectory(path2)
File.WriteAllBytes(path2 + @"\" + "text.txt", myfile)
答案 1 :(得分:0)
我从未尝试过在exe文件中编写,但您已经尝试过设置权限了吗?我不知道在c#exisist中是否有一些方法可以做到,但肯定存在“exec”,所以你可以用它来发送chmod命令