我目前在使用C#程序时遇到问题。我试图创建一个文件流来创建或编辑文件,但我似乎无法使其工作。
我永远有一个例外“拒绝访问”,但我尝试了所有内容(授予所有用户权限,以管理员身份运行,语法)
说实话,我有点失落......
我甚至尝试从教程中提取样本,以确保我没有任何语法问题,但没有。
public MainPage()
{
this.InitializeComponent();
string dir = @"C:\temp\data.bin";
FileStream fs = new FileStream(dir, FileMode.Create, FileAccess.ReadWrite);
fs.Close();
}
即使使用默认的Visual Studio文件夹,它也不起作用:
string dir = Directory.GetCurrentDirectory();
string fil = @"\data.bin";
FileStream fs = new FileStream(dir + fil, FileMode.Create, FileAccess.ReadWrite);
fs.Close();
这段代码给了我一个例外:
System.UnauthorizedAccessException:'访问路径'C:\ Users \ Arthok \ source \ repos \ test \ test \ bin \ x64 \ Debug \ AppX \ data.bin'被拒绝。'
编辑:尝试使用UWP位置#pm100
答案 0 :(得分:1)
感谢所有人,但我只是在UWP,并没有意识到FileStream不会工作。 所以答案显然在手册中(感谢pm100):
https://docs.microsoft.com/en-us/windows/uwp/files/quickstart-reading-and-writing-files
我只需要用这个命令创建文件:
Windows.Storage.StorageFolder storageFolder =
Windows.Storage.ApplicationData.Current.LocalFolder;
Windows.Storage.StorageFile sampleFile =
await storageFolder.CreateFileAsync("sample.txt", Windows.Storage.CreationCollisionOption.ReplaceExisting);
答案 1 :(得分:0)
I think you need FileMode.OpenOrCreate
. Also try running you application with elevated privilege.