位置: 编程技术 - 正文

Unity3D读取XML文档信息(unity读取文本文件)

编辑:rootadmin

推荐整理分享Unity3D读取XML文档信息(unity读取文本文件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity 读取xml,unity 读取xml,unity读取json文件,unity 读取xml文件,unity读取txt数据,unity读取文本文件,unity 读取xml文件,unity 读取xml文件,内容如对您有帮助,希望把文章链接给更多的朋友!

C#中可以用XmlDocument类操作Xml文件

例如要读取如下Xml文件

程式如下

其中XmlElement继承自XmlNode

XmlElement有GetAttribute()&GetElementsByTagName()等方法而XmlNode没有

不管使用XmlNode的ChildNodes属性还是XmlElement的GetElementsByTagName()方法获取的都是XmlNodeList

那这里就存在获取的XmlNodeList中的XmlNode到底是什么类型的问题

Unity3D读取XML文档信息(unity读取文本文件)

可以根据XmlNode的NodeType属性判断

如若等于XmlNodeType.Element就可以强转为XmlElement从而使用XmlElement的方法

转载: view plaincopyusing System; using UnityEngine; using System.IO; using System.Xml; using System.Linq; using System.Text; using System.Collections.Generic; namespace Address { /// <summary> /// 地址数据 /// </summary> public class AddressData { /// <summary> ///当前城市ID /// </summary> public static string _nowProvinceId; /// <summary> /// 所有省名字 /// </summary> public static List<string> allProvinceName = new List<string>(); /// <summary> /// 所有城市id /// </summary> public List<string> allCityId = new List<string>(); ///<summary> ///所有城市名字 ///</summary> public List<string> allCityName = new List<string>(); public static string localUrl = Application.dataPath &#; "/XMLFile1.xml"; /// <summary> /// 加载xml文档 /// </summary> /// <returns></returns> public static XmlDocument ReadAndLoadXml() { XmlDocument doc = new XmlDocument(); Debug.Log("加载xml文档"); doc.Load(localUrl); return doc; } /// <summary> /// 从本地加载xml并获取所有省的名字 /// </summary> /// <param name="url"></param> /// <returns></returns> public static List<string> GetAllProvinceName() { List<string> _allProvinceName = new List<string>(); XmlDocument xmlDoc = ReadAndLoadXml(); //所有province节点 XmlNode provinces = xmlDoc.SelectSingleNode("province"); foreach (XmlNode province in provinces) { XmlElement _province = (XmlElement)province; //所有provinceName添加到列表 allProvinceName.Add(_province.GetAttribute("name")); } Debug.Log("所有省数目"&#;allProvinceName.Count); _allProvinceName = allProvinceName; return _allProvinceName; } /// <summary> /// 根据当前省ID返回当前省的所有城市名 /// </summary> /// <param name="nowProvinceId"></param> /// <returns></returns> public static List<string> GetAllCityNameByNowProvinceId(string nowProvinceId) { List<string> nowAllCityName = new List<string>(); XmlDocument xmlDoc = ReadAndLoadXml(); //所有province节点 XmlNode provinces = xmlDoc.SelectSingleNode("province"); foreach (XmlNode province in provinces) { XmlElement _province = (XmlElement)province; //当前城市id if (nowProvinceId == _province.GetAttribute("id")) { foreach (XmlElement city in _province.ChildNodes) { XmlElement _city = (XmlElement)city; //当前城市的所有cityName添加到列表 nowAllCityName.Add(_city.GetAttribute("name")); } } } return nowAllCityName; } /// <summary> /// 根据省的ID返回省的名字 /// </summary> /// <param name="provinceId"></param> /// <returns></returns> public static string GetProvinceName(string provinceId) { string _provinceName = ""; XmlDocument xmlDoc = ReadAndLoadXml(); //所有province节点 XmlNode provinces = xmlDoc.SelectSingleNode("province"); foreach (XmlNode province in provinces) { XmlElement _province = (XmlElement)province; if (provinceId == _province.GetAttribute("id")) { //获取实际省名 _provinceName= _province.GetAttribute("name"); } } return _provinceName; } /// <summary> /// 根据城市ID返会城市名字 /// </summary> /// <param name="cityId"></param> /// <returns></returns> public static string GetCityName(string cityId) { string cityName=""; XmlDocument xmlDoc = ReadAndLoadXml(); //所有province节点 XmlNode provinces = xmlDoc.SelectSingleNode("province"); foreach (XmlNode province in provinces) { XmlElement _province = (XmlElement)province; if (_nowProvinceId == _province.GetAttribute("id")) { foreach (XmlElement city in _province.ChildNodes) { XmlElement _city = (XmlElement)city; if (cityId == _city.GetAttribute("id")) { //获取实际城市名 cityName = _city.GetAttribute("name"); } } } } return cityName; } } }

[csharp] view plaincopyusing UnityEngine; using System.Collections; using System.Collections.Generic; using Address; public class FinalTest : MonoBehaviour { // Use this for initialization void Start () { List<string> allp = new List<string>(); allp = AddressData.GetAllProvinceName(); Debug.Log(AddressData.allProvinceName.Count); Debug.Log(allp.Count); List<string> allCity = new List<string>(); allCity = AddressData.GetAllCityNameByNowProvinceId(""); Debug.Log(allCity.Count); for (int i = 0; i < allCity.Count; i&#;&#;) { Debug.Log(allCity[i]); } string a = AddressData.GetProvinceName(""); Debug.Log(a); } // Update is called once per frame void Update() { } }

[html] view plaincopy<?xml version="1.0" encoding="utf-8"?> <province> <province id ="" name="江苏"> <city id ="" name ="南京"></city> <city id ="" name ="镇江"></city> <city id ="" name ="南通"></city> </province> <province id ="" name="河南"> <city id ="" name ="郑州"></city> <city id ="" name ="开封"></city> <city id ="" name ="洛阳"></city> </province> </province> 转载:

UnityC# MD5验证 孙广东.6.数据经网络传输后会变得非常不安全,最简单有效的解决方案是给数据加一个密钥,使用MD5算法算出校验码,服务器收到数据和校验码后

Unity3d好文汇总 ExecutionOrderofEventFunctions(Unity事件函数执行流程)

unity 加载c++ dll文件提示DllNotFoundException的解决办法 很久前就碰到这个问题,生成的exe是可以正确运行,但在editor里面总是提示DllNotFoundException,一直没有功夫解决。今天终于搞定了。原因在于VS默认添加

标签: unity读取文本文件

本文链接地址:https://www.jiuchutong.com/biancheng/369189.html 转载请保留说明!

上一篇:Unity3d_NGUI和UGUI的学习

下一篇:UnityC# MD5验证(unity serial number)

  • 分公司非独立核算
  • 单位内部食堂如何做账务处理
  • 子公司自购买日开始持续计算的净资产包括商誉吗
  • 个税申报错误已过申报期怎么修改
  • 应付账款尾差怎么算
  • 横幅属于什么发票范围
  • 互联网公司成本包括哪些
  • 直接进费用的固定资产
  • 建筑公司设计费税率
  • 预缴的税款
  • 土地增值税预征率
  • 供货方提供安装材料
  • 库存盘盈如何入账
  • 销售边角料收入属于什么收入
  • 净值的公式
  • 公司成立后有哪些开支
  • 发放股票股利要考虑时间权重吗
  • 印花税注册资本缴税时间
  • 开办期间的税控设备怎么入账?
  • 委托代销商品按什么确认收入
  • 一般纳税人交的增值税可以抵扣吗
  • 增值税即征即退会计处理
  • 海关增值税发票双抬头
  • 暂估固定资产原值减少
  • 个人以房产投资一人有限公司时,房产要开发票吗
  • 备孕男的要吃叶酸吗? 已解决
  • bios设置第一启动项Linux
  • composer.json和composer.lock
  • 尼泊尔乡村
  • php preg_split
  • 开展党建系列活动
  • kkfileview启动组件失败
  • php数据库语句
  • 长期借款科目的期末余额反映尚未偿还的借款本金
  • 注销库存股的会计分录怎么理解
  • 关于出售使用过的东西
  • vue打包成一个文件
  • 银行询证函费用减免
  • 城市公交网
  • vue 响应式自适应布局
  • RLHF:基于人类反馈(Human Feedback)对语言模型进行强化学习【Reinforcement Learning from Human Feedback】
  • 低调低调
  • vue中的路由守卫有哪些
  • 有效的管理你的时间的重要性英文作文
  • phpcms建站教程
  • 帝国cms教程官方完整版
  • 普通增值发票可以抵扣进项税吗
  • 法人如何提取公积金
  • 蔬菜开票税率是多少
  • 劳务分包的形式完成施工任务
  • 应付账款发生坏账怎么办
  • db2数据库安装服务器的环境
  • 应付账款的入账时间为
  • 设备转固的前提条件
  • 预缴土地增值税税率表2023年最新
  • 借款利息收入开发票
  • 税务机关多收税款几年可以要求退回
  • 个体户员工要签劳动合同吗
  • 投标保证金以现金形式转为履约保证金
  • 建筑业红字发票如何开
  • 审计真实性认定
  • 预收账款和应收账款可以放在一个账户
  • 小规模公司怎么做账
  • mysql分页效率
  • macos怎么使用
  • centos怎么样
  • storm run off
  • windows10x预览版
  • WIN10怎么卸载更新
  • from tkinter import
  • jq拖拽div替换位置
  • 怎么把两个文件中的内容合并
  • python如何处理文本
  • js跨域的几种方法
  • python 编程技巧
  • javascript获取复选框的值
  • 百旺导入领购的新发票
  • 银行关联方认定标准是什么
  • 收到免税的苗木发票怎么做账
  • 中铁e通手机app
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设