我想写一些数据在XML文件中使用地铁风格的应用程序(.Net框架4.5)。
下面是我编写的代码,它工作得很好,但问题是整个字符串是在单行中编写的,而不是XML文本格式。因此我不能正确地阅读它。每次我需要重新格式化新添加的数据以正确理解它时。
下面是我写的代码:
Dim f As New FolderPicker
f.SuggestedStartLocation = PickerLocationId.DocumentsLibrary
f.ViewMode = PickerViewMode.Thumbnail
f.FileTypeFilter.Add("*")
Dim folder As StorageFolder = Await f.PickSingleFolderAsync
Dim rootEle As XmlElement
Dim file As StorageFile = Nothing
file = Await folder.CreateFileAsync("demoXML.xml", CreationCollisionOption.ReplaceExisting)
rootEle = doc.CreateElement("files_tbl")
doc.AppendChild(rootEle)
Dim ele As XmlElement
ele = doc.CreateElement("files")
rootEle.AppendChild(ele)
Dim otherEle As XmlElement
otherEle = doc.CreateElement("field-1")
otherEle.InnerText = "data-1"
ele.AppendChild(otherEle)
otherEle = doc.CreateElement("field-2")
otherEle.InnerText = "data-2"
ele.AppendChild(otherEle)
Await doc.SaveToFileAsync(file)如果我想要这样的输出:
<files_tbl>
<files>
<field-1>data-1</field-1>
<field-2>data-2</field-2>
</files>
</files_tbl>实际上,我希望使用该xml文件作为我的数据库,因为我不想存储大量数据。我只需要存储文件的一些属性,如文件名、扩展名、位置等。
是否可以将xml文件用作数据库?
发布于 2013-02-26 21:06:57
您可以考虑将您的解决方案改为使用XDocument而不是XmlDocument。这是一种更新、更用户友好的技术,它允许您在将输出保存到文件或流中时格式化输出。
查看MSDN上的XDocument class和XDocument.Save() method文档。
要使其与WinRT一起工作,请使用OpenStreamForReadAsync和OpenStreamForWriteAsync方法。
https://stackoverflow.com/questions/15089790
复制相似问题