如何在我的应用程序中拥有XML文件

本文关键字:拥有 XML 文件 应用程序 我的 | 更新日期: 2023-09-27 18:19:59

我的应用程序中需要一个XML文件,所以我将它添加到AppResources.resxFiles部分,它出现在Resources文件夹中,名称为myFile.xml

var myFile = MyApp.Resources.AppResources.myFile; 

这只是返回一个字符串值,这不是我想要的。

XmlSerializer需要一个到现有文件的流来反序列化它,所以我不知道该如何处理这个字符串?

如何获得该文件的xml变量?感谢

如何在我的应用程序中拥有XML文件

使用StringReader:

        var myFile = MyApp.Resources.AppResources.myFile;
        StringReader sr = new StringReader(myFile);
        var xmlSerializer = new XmlSerializer(typeof(Foo));
        var classInstance = xmlSerializer.Deserialize(sr);

如果我理解正确,您可以使用MapPath来解析文件路径,并直接使用它来打开一个appender并序列化您的对象(在本例中,我使用的是一个具有单个属性Name的示例类Foo)。如果我理解你的要求有误,请告诉我。

using(var stream = new FileStream("test.txt", FileMode.Append))
            {
                var serializer = new XmlSerializer(typeof (Foo));
                var @object = new Foo
                    {
                        Name = "Bar"
                    }; 
                serializer.Serialize(stream, @object);
            }

这将在的行中添加一些内容

<Foo>
  <Name>Bar</Name>
</Foo>