【发布时间】:2018-04-09 23:53:24
【问题描述】:
在我的代码中有一个 XML 文件,我用不同的方法从中获取信息(变量),但是当出现路灯问题(我无法控制的东西)时,这会使我的设备硬重启XML 文件损坏,我正在尝试这样做,但它在这一行中抛出异常“使用 (fsFileStream = new FileStream(musicLibraryPath...",非常感谢您的帮助。我将代码留在下面:
public async void fileExist(string fileName)
{
try
{
//Creates "file.xml".
StorageFile newBlankDocument =
await KnownFolders.MusicLibrary.CreateFileAsync(blankFile, CreationCollisionOption.FailIfExists);
}
catch (Exception)
{
}
try
{
//Creates "configFile.xml".
StorageFile newDocument =
await KnownFolders.MusicLibrary.CreateFileAsync(fileName, CreationCollisionOption.FailIfExists);
//Gets the file
StorageFile fileDocument =
await KnownFolders.MusicLibrary.GetFileAsync(fileName);
var musicLibrary = await StorageLibrary.GetLibraryAsync(KnownLibraryId.Music);
String musicLibraryPath = musicLibrary.SaveFolder.Path;
using (fsFileStream =
new FileStream( musicLibraryPath, FileMode.CreateNew, FileAccess.Write, FileShare.None, 1024, FileOptions.WriteThrough))
{
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.OmitXmlDeclaration = false;
using (XmlWriter writer = XmlWriter.Create(fsFileStream, settings))
{
//Create all the XML document fields.
writer.WriteStartDocument();
writer.WriteStartElement("Config");
writer.WriteStartElement("General");
writer.WriteAttributeString("name", "DATA");
writer.WriteStartElement("Local");
writer.WriteElementString("something1", "");
writer.WriteElementString("something2", "");
writer.WriteElementString("something3", "");
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Flush();
writer.Dispose();
showReferenceWarning();
timerReferenceWarning.Start();
}
}
}
catch (Exception)
{
//The file already exist and doesn´t need to be created again.
}
}
【问题讨论】:
标签: c# xml uwp windows-10 windows-10-universal