所以,我正在尝试创建一个登录表单,但我需要首先读取和写入文件等; 我正在创建一个文件然后将'test'写入文件,但如果我然后删除该文件并尝试同时发出我的命令:
FileIO.FileCheck("Usernames.pheonix");
FileIO.WriteFile("Usernames.pheonix", "test");
Run Code Online (Sandbox Code Playgroud)
它给我一个错误;
该进程无法访问文件'C:\ Users\XXX\Desktop\Pheonix Launcher\Pheonix\bin\Debug\Usernames.pheonix',因为它正由另一个进程使用.
我似乎无法让我知道它为什么继续这样做,这是我的读/写文件:
public static void createFile(String FileName)
{
File.Create(FileName);
}
public static void WriteFile(String File ,String Message)
{
FileStream fs1 = new FileStream(File, FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter writer = new StreamWriter(fs1);
writer.Write(Message);
writer.Close();
}
public static void FileCheck(String fileName)
{
if (File.Exists(fileName))
Console.WriteLine("File exists.");
else
createFile(fileName);
}
Run Code Online (Sandbox Code Playgroud)
File.Create确实创建了一个文件 - 并向其返回一个开放流.把它放在一个using街区.(不要只是在它上面调用 - 这将是一个错误,因为它不是异常安全的).
实际上,仔细观察,我发现你根本不需要这个FileMode.OpenOrCreate.无论如何都会创建该文件.
| 归档时间: |
|
| 查看次数: |
138 次 |
| 最近记录: |