前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >对XMl文件的操作

对XMl文件的操作

作者头像
bering
发布2019-12-03 15:19:52
8900
发布2019-12-03 15:19:52
举报
文章被收录于专栏:游戏开发之旅游戏开发之旅

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/CJB_King/article/details/52093069

一.在工程目录下,新建txt文件取名Skills,修改其属性运行时复制到工作目录中;

右键选择Open with

选择Xml方便编辑txt内容

二.新建一个SkillInfo类,用来存储Skill信息

代码语言:javascript
复制
class SkillInfo
{
    public int ID { get; set; }
    public string Name { get; set; }
    public int Damage { set; get; }
    public string Language { get; set; }
    public override string ToString()
    {
        return string.Format("ID:" + ID + ",Name:" + Name + ",Damage:" + Damage + ",Language:" + Language);
    }
}
代码语言:javascript
复制
static void Main(string[] args)
        {
            List<SkillInfo> SkillList = new List<SkillInfo>();
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load("Skills.txt");
            XmlNode skills = xmlDoc.FirstChild;
            XmlNodeList skillList = skills.ChildNodes;
            foreach (XmlNode skill in skillList)
            {
                XmlNodeList skillInfo = skill.ChildNodes;
                SkillInfo skillObject = new SkillInfo();
                foreach (XmlNode info in skillInfo)
                {
                    if (info.Name== "ID")
                    {
                        skillObject.ID =int.Parse(info.InnerText);
                    }
                    if (info.Name == "Name")
                    {
                        skillObject.Name = info.InnerText;
                        skillObject.Language = info.Attributes[0].Value;
                    }
                    if (info.Name == "Damage")
                    {
                        skillObject.Damage = int.Parse(info.InnerText);
                    }
                }
                SkillList.Add(skillObject);
            }
            foreach(SkillInfo list in SkillList)
            {
                Console.WriteLine(list.ToString());
            }
            Console.ReadKey();
        }

Skills.txt文本编写格式如下:

结果如下:

Unity中将一个对象写入XML文件中的操作如下:

代码语言:javascript
复制
  string xmlPath = Application.dataPath + "/AssetbundleConfig.xml";
        if (File.Exists(xmlPath)) File.Delete(xmlPath);
        FileStream fileStream = new FileStream(xmlPath, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
        StreamWriter sw = new StreamWriter(fileStream, System.Text.Encoding.UTF8);
        XmlSerializer xs = new XmlSerializer(config.GetType());
        xs.Serialize(sw, config);
        sw.Close();
        fileStream.Close();
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-08-02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.在工程目录下,新建txt文件取名Skills,修改其属性运行时复制到工作目录中;
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档