gpt4 book ai didi

c# - 使用 XmlWriter 创建 xml 文件

转载 作者:数据小太阳 更新时间:2023-10-29 01:48:00 24 4
gpt4 key购买 nike

我在使用 XmlWriter 中的 Create 方法时遇到问题。

即使我使用来自 msdn 的示例,它也不会工作。 http://msdn.microsoft.com/en-us/library/kcsse48t.aspx

我为 Windows 商店应用程序创建了一个“空白页”项目。我在其中插入了来自 msdn 的示例代码,以测试 XmlWriter 类的工作原理。

VS 给我错误:

Cannot resolve method 'Create(string)', candidates are: 
System.Xml.XmlWriter Create(System.IO.Stream) (in class XmlWriter)
System.Xml.XmlWriter Create(System.IO.TextWriter) (in class XmlWriter)
System.Xml.XmlWriter Create(System.Text.StringBuilder) (in class XmlWriter)
System.Xml.XmlWriter Create(System.Xml.XmlWriter) (in class XmlWriter)

这在控制台应用程序中没有问题。但我需要制作一个 Windows 应用商店应用。

我希望最终做的是添加到现有的 xml 文件。

谁能告诉我为什么这行不通,或者如何以不同的方式实现我的目标。

感谢您的宝贵时间。

编辑:

对不起,我的代码:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using System.Xml;
using System.Xml.Linq;
using Windows.Data.Xml.Dom;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;

// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238

namespace DatabaseTest
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}


private void button_submit_Click(object sender, RoutedEventArgs e)
{
using (XmlWriter writer = XmlWriter.Create("output.xml"))
{
writer.WriteStartElement("book");
writer.WriteElementString("price", "19.95");
writer.WriteEndElement();
writer.Flush();
}
}
}
}

最佳答案

这是一个 Windows 应用商店应用程序,不是吗?编辑您的问题标签并试试这个:

StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync("output.xml", CreationCollisionOption.ReplaceExisting);
using (IRandomAccessStream writeStream = await file.OpenAsync(FileAccessMode.ReadWrite))
{
System.IO.Stream s = writeStream.AsStreamForWrite();
System.Xml.XmlWriterSettings settings = new System.Xml.XmlWriterSettings();
settings.Async = true;
using (System.Xml.XmlWriter writer = System.Xml.XmlWriter.Create(s, settings))
{
// Do stuff...

await writer.FlushAsync();
}
}

一旦您知道它有效,您就可以删除 namespace 限定符。

检查 this了解如何在 Windows 应用商店应用程序中存储文件。另请查看 this sample 。我的代码将使用本地应用程序文件夹,即类似于:C:\Users\[name]\AppData\Local\Packages\[appName]\LocalState\

关于c# - 使用 XmlWriter 创建 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26403390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com