C#实现XML文件读取

本文实例为大家分享了C#实现XML文件读取的具体代码,供大家参考,具体内容如下

using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Xml.Serialization;

/// <summary>
/// 工具类
/// </summary>
public static class Tools {
  /// <summary>
  /// 存储数据 UTF8
  /// </summary>
  /// <param name="data">数据,自定义类</param>
  public static void SaveData(GameData data)
  {
    string fileName = Consts.DataPath; // 文件名

    // 文件流
    Stream stream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);
    StreamWriter sw = new StreamWriter(stream, Encoding.UTF8);     // UTF8
    XmlSerializer xmlSerializer = new XmlSerializer(data.GetType());  // XML 文件序列化
    xmlSerializer.Serialize(sw, data);

    sw.Close();
    stream.Close();
  }

  /// <summary>
  /// 读取数据
  /// </summary>
  /// <returns>读取获得的数据</returns>
  public static GameData GetDataWithOutBom()
  {
    GameData data = new GameData();

    Stream stream = new FileStream(Consts.DataPath, FileMode.Open, FileAccess.Read);
    // 忽略标记 true
    StreamReader sr = new StreamReader(stream, true);
    XmlSerializer xmlSerializer = new XmlSerializer(data.GetType());
    data = xmlSerializer.Deserialize(sr) as GameData;

    sr.Close();
    stream.Close();

    return data;
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。