我创建了一个XML文件,但问题是我需要它是一个隐藏文件,
现在我在文件夹中看到了XML文件,可以点击它等。
我的代码:(这是xml文件的创建)
XDocument doc;
doc =
new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement("files"));
doc.Save(xmlPath);`
如何更改?
答案 0 :(得分:5)
FileAttributes attributes = File.GetAttributes(xmlPath);
// Hide the file.
File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.Hidden);
Console.WriteLine("The {0} file is now hidden.", path);
答案 1 :(得分:1)
在保存文件之前,如果它是隐藏或只读,则必须先修复(取消隐藏)权限。所以你需要做这样的事情:
private void RemoveHiddenNReadOnly()
{
if (File.Exists) // File here is the FileInfo of the xml file for the class
{
File.Attributes &= ~FileAttributes.Hidden; // Remove Hidden Flag
File.Attributes &= ~FileAttributes.ReadOnly; // Remove ReadOnly Flag
}
}
然后保存文件,然后再次设置隐藏标志。
doc.Save(File.FullName);
File.Attributes |= FileAttributes.Hidden;
答案 2 :(得分:0)
FileAttributes attributes = File.GetAttributes("data.xml");
//To Hide the file
File.SetAttributes("data.xml", File.GetAttributes("data.xml") | FileAttributes.Hidden);
//and to unhide the file
if ((attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
{
attributes &= ~FileAttributes.Hidden;
File.SetAttributes("data.xml", attributes);
}
在这种情况下,“data.xml”位于调试文件夹中,但您可以将其更改为文件所在的路径 -> String path = "C:\Users\User\App....\文件名.ext"