使用C#…我有一个小应用程序,它从一个类创建对象,并将它们添加到一个对象集合中,它会沿途显示一些UI内容,以显示集合中当前所选对象的某些值(使用WPF UI) .所以我想添加让用户将对象集合保存到文件的功能,这样他们就可以在下次运行应用程序时将其加载回来.
我猜测XML是一种显而易见的方法,但我对如何做到这一点一无所知.那么,如何将对象集合导出或转储到xml文件中,然后,或许更重要的是,如何将该XML文件读回我的应用程序以重新创建集合?
解决方法:
在我的一个测试应用程序中,我有时需要能够将对象序列化为XML,以便我可以脱机查看它.这是我使用的片段(没有以任何方式进行优化,只是有一天快速敲打,并且它已经按照我需要的方式工作).
public static string ObjectToXml(T objectToSerialise)
{
StringWriter Output = new StringWriter(new StringBuilder());
XmlSerializer xs = new XmlSerializer(objectToSerialise.GetType());
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("MyNs", "http://www.someXmlNamespace/namespace1"); // add as many or few as you need
xs.Serialize(Output, objectToSerialise, ns);
return Output.ToString();
}
在那之后,将数据喷出到文件是微不足道的.
备注:
我需要能够将XML内容作为字符串获取,因此我可以通过多种方式保持它.构建一个直接转到磁盘的方法也很容易,如果这就是你需要的.
虽然这对我有用,但您可能需要调整以满足自己的需求.
标签:c,collections,export,xml
来源: https://codeday.me/bug/20190527/1160919.html