问题:在添加信息之前,我需要清除一个ini文件。
不幸的是,如果我只删除该文件,权限也会消失。
有没有办法删除文件的内容而不删除文件?
答案 0 :(得分:7)
String path = "c:/file.ini";
using (var stream = new FileStream(path, FileMode.Truncate))
{
using (var writer = new StreamWriter(stream))
{
writer.Write("data");
}
}
答案 1 :(得分:5)
只需以截断(即非追加)模式打开文件并关闭它。然后它的内容消失了。或者使用My
命名空间中的快捷方式:
My.Computer.FileSystem.WriteAllText("filename", "", False)
答案 2 :(得分:4)
我不是百分百肯定,但你可以试试这个:
File.WriteAllText( filename, "");
我不确定这是否会删除,并重新创建文件(在这种情况下,您的权限问题会持续存在,或者是否会清除文件。请尝试一下!
答案 3 :(得分:3)
这应该可行:
using (File.Create("your filename"));
这里,因为使用没有块;在行尾。 File.Create截断文件本身,并使用立即关闭它。