上一篇文章我们说到了,配置文件的生成,接下来继续,也就是
1、Unity中,使用资源加载系统去 加载配置文件(客户端)
2、在C# 文件 IO 接口加载文件(服务器)
所以这里直接就上源代码了:上代码之前看把 XML 贴出来吧
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<item ID="1">
<surname>赵</surname>
<man>夷</man>
<woman>妃</woman>
</item>
<item ID="2">
<surname>孙</surname>
<man>洛</man>
<woman>羽</woman>
</item>
<item ID="3">
<surname>李</surname>
<man>乐</man>
<woman>青</woman>
</item>
<item ID="4">
<surname>周</surname>
<man>锋</man>
<woman>月</woman>
</item>
<item ID="5">
<surname>吴</surname>
<man>冷</man>
<woman>明</woman>
</item>
<item ID="6">
<surname>郑</surname>
<man>亦</man>
<woman>霜</woman>
</item>
<item ID="7">
<surname>王</surname>
<man>羽</man>
<woman>遥</woman>
</item>
<item ID="8">
<surname>陈</surname>
<man>帆</man>
<woman>瑶</woman>
</item>
<item ID="9">
<surname>褚</surname>
<man>向</man>
<woman>仙</woman>
</item>
<item ID="10">
<surname>卫</surname>
<man>安</man>
<woman>翩</woman>
</item>
<item ID="11">
<surname>韩</surname>
<man>宇</man>
<woman>依</woman>
</item>
<item ID="12">
<surname>杨</surname>
<man>远</man>
<woman>雨</woman>
</item>
<item ID="13">
<surname>朱</surname>
<man>璧</man>
<woman>盈</woman>
</item>
<item ID="14">
<surname>秦</surname>
<man>君</man>
<woman>香</woman>
</item>
<item ID="15">
<surname>许</surname>
<man>俊</man>
<woman>盼</woman>
</item>
<item ID="16">
<surname>吕</surname>
<man>漠</man>
<woman>虹</woman>
</item>
<item ID="17">
<surname>张</surname>
<man>骏</man>
<woman>纱</woman>
</item>
<item ID="18">
<surname>孔</surname>
<man>定</man>
<woman>姬</woman>
</item>
<item ID="19">
<surname>曹</surname>
<man>磐</man>
<woman>鸾</woman>
</item>
<item ID="20">
<surname>华</surname>
<man>武</man>
<woman>七</woman>
</item>
<item ID="21">
<surname>金</surname>
<man>坤</man>
<woman>音</woman>
</item>
<item ID="22">
<surname>魏</surname>
<man>炜</man>
<woman>霖</woman>
</item>
<item ID="23">
<surname>姜</surname>
<man>赋</man>
<woman>涓</woman>
</item>
<item ID="24">
<surname>谢</surname>
<man>泊</man>
<woman>霏</woman>
</item>
<item ID="25">
<surname>喻</surname>
<man>维</man>
<woman>雪</woman>
</item>
<item ID="26">
<surname>水</surname>
<man>颐</man>
<woman>紫</woman>
</item>
<item ID="27">
<surname>云</surname>
<man>墨</man>
<woman>朱</woman>
</item>
<item ID="28">
<surname>苏</surname>
<man>震</man>
<woman>倩</woman>
</item>
<item ID="29">
<surname>马</surname>
<man>扬</man>
<woman>茜</woman>
</item>
<item ID="30">
<surname>任</surname>
<man>欧</man>
<woman>露</woman>
</item>
<item ID="31">
<surname>袁</surname>
<man>复</man>
<woman>妍</woman>
</item>
<item ID="32">
<surname>柳</surname>
<man>搏</man>
<woman>媚</woman>
</item>
<item ID="33">
<surname>唐</surname>
<man>文</man>
<woman>伊</woman>
</item>
<item ID="34">
<surname>殷</surname>
<man>霄</man>
<woman>邀</woman>
</item>
<item ID="35">
<surname>安</surname>
<man>济</man>
<woman>馥</woman>
</item>
<item ID="36">
<surname>乐</surname>
<man>影</man>
<woman>心</woman>
</item>
<item ID="37">
<surname>于</surname>
<man>逸</man>
<woman>袅</woman>
</item>
<item ID="38">
<surname>齐</surname>
<man>冲</man>
<woman>怜</woman>
</item>
<item ID="39">
<surname>黄</surname>
<man>奥</man>
<woman>珊</woman>
</item>
<item ID="40">
<surname>萧</surname>
<man>傲</man>
<woman>兰</woman>
</item>
<item ID="41">
<surname>邵</surname>
<man>雍</man>
<woman>灵</woman>
</item>
<item ID="42">
<surname>狄</surname>
<man>鹰</man>
<woman>棠</woman>
</item>
<item ID="43">
<surname>明</surname>
<man>游</man>
<woman>媛</woman>
</item>
<item ID="44">
<surname>宋</surname>
<man>卫</man>
<woman>芸</woman>
</item>
<item ID="45">
<surname>纪</surname>
<man>兴</man>
<woman>碧</woman>
</item>
<item ID="46">
<surname>舒</surname>
<man>鹏</man>
<woman>琳</woman>
</item>
<item ID="47">
<surname>项</surname>
<man>勉</man>
<woman>文</woman>
</item>
<item ID="48">
<surname>祝</surname>
<man>幽</man>
<woman>雯</woman>
</item>
<item ID="49">
<surname>董</surname>
<man>璇</man>
<woman>唯</woman>
</item>
<item ID="50">
<surname>蓝</surname>
<man>真</man>
<woman>珠</woman>
</item>
<item ID="51">
<surname>贾</surname>
<man>楼</man>
<woman>涵</woman>
</item>
<item ID="52">
<surname>颜</surname>
<man>天</man>
<woman>灵</woman>
</item>
<item ID="53">
<surname>林</surname>
<man>佩</man>
<woman>玲</woman>
</item>
<item ID="54">
<surname>徐</surname>
<man>协</man>
<woman>爱</woman>
</item>
<item ID="55">
<surname>邱</surname>
<man>弦</man>
<woman>白</woman>
</item>
<item ID="56">
<surname>高</surname>
<man>坦</man>
<woman>燕</woman>
</item>
<item ID="57">
<surname>夏</surname>
<man>奉</man>
<woman>嫣</woman>
</item>
<item ID="58">
<surname>凌</surname>
<man>咏</man>
<woman>纹</woman>
</item>
<item ID="59">
<surname>虞</surname>
<man>过</man>
<woman>朱</woman>
</item>
<item ID="60">
<surname>管</surname>
<man>非</man>
<woman>真</woman>
</item>
<item ID="61">
<surname>卢</surname>
<man>霸</man>
<woman>莺</woman>
</item>
<item ID="62">
<surname>莫</surname>
<man>炎</man>
<woman>娜</woman>
</item>
<item ID="63">
<surname>荣</surname>
<man>禹</man>
<woman>冰</woman>
</item>
<item ID="64">
<surname>甄</surname>
<man>勇</man>
<woman>影</woman>
</item>
<item ID="65">
<surname>曲</surname>
<man>飞</man>
<woman>清</woman>
</item>
<item ID="66">
<surname>段</surname>
<man>明</man>
<woman>晴</woman>
</item>
<item ID="67">
<surname>伊</surname>
<man>威</man>
<woman>容</woman>
</item>
<item ID="68">
<surname>宁</surname>
<man>轲</man>
<woman>蓉</woman>
</item>
<item ID="69">
<surname>甘</surname>
<man>异</man>
<woman>淑</woman>
</item>
<item ID="70">
<surname>刘</surname>
<man>义</man>
<woman>甜</woman>
</item>
<item ID="71">
<surname>景</surname>
<man>备</man>
<woman>恬</woman>
</item>
<item ID="72">
<surname>叶</surname>
<man>涯</man>
<woman>婷</woman>
</item>
<item ID="73">
<surname>韶</surname>
<man>砚</man>
<woman>婉</woman>
</item>
<item ID="74">
<surname>白</surname>
<man>誉</man>
<woman>湘</woman>
</item>
<item ID="75">
<surname>池</surname>
<man>寒</man>
<woman>馨</woman>
</item>
<item ID="76">
<surname>苍</surname>
<man>傅</man>
<woman>秀</woman>
</item>
<item ID="77">
<surname>姬</surname>
<man>竹</man>
<woman>雅</woman>
</item>
<item ID="78">
<surname>冉</surname>
<man>斐</man>
<woman>英</woman>
</item>
<item ID="79">
<surname>桑</surname>
<man>越</man>
<woman>珍</woman>
</item>
<item ID="80">
<surname>温</surname>
<man>为</man>
<woman>贞</woman>
</item>
<item ID="81">
<surname>晏</surname>
<man>雄</man>
<woman>姬</woman>
</item>
<item ID="82">
<surname>连</surname>
<man>博</man>
<woman>晶</woman>
</item>
<item ID="83">
<surname>鱼</surname>
<man>云</man>
<woman>茹</woman>
</item>
<item ID="84">
<surname>容</surname>
<man>候</man>
<woman>媗</woman>
</item>
<item ID="85">
<surname>庚</surname>
<man>也</man>
<woman>仙</woman>
</item>
<item ID="86">
<surname>步</surname>
<man>益</man>
<woman>小</woman>
</item>
<item ID="87">
<surname>文</surname>
<man>佑</man>
<woman>晓</woman>
</item>
<item ID="88">
<surname>聂</surname>
<man>辰</man>
<woman>乐</woman>
</item>
<item ID="89">
<surname>晁</surname>
<man>均</man>
<woman>咏</woman>
</item>
<item ID="90">
<surname>冷</surname>
<man>延</man>
<woman>菲</woman>
</item>
<item ID="91">
<surname>关</surname>
<man>帷</man>
<woman>敏</woman>
</item>
<item ID="92">
<surname>游</surname>
<man>辨</man>
<woman>环</woman>
</item>
<item ID="93">
<surname>司马</surname>
<man>宏</man>
<woman>瑄</woman>
</item>
<item ID="94">
<surname>上官</surname>
<man>遥</man>
<woman>琴</woman>
</item>
<item ID="95">
<surname>欧阳</surname>
<man>敖</man>
<woman>琼</woman>
</item>
<item ID="96">
<surname>夏侯</surname>
<man>炳</man>
<woman>瑛</woman>
</item>
<item ID="97">
<surname>诸葛</surname>
<man>斌</man>
<woman>琉</woman>
</item>
<item ID="98">
<surname>闻人</surname>
<man>敏</man>
<woman>璃</woman>
</item>
<item ID="99">
<surname>东方</surname>
<man>伟</man>
<woman>伶</woman>
</item>
<item ID="100">
<surname>赫连</surname>
<man>翌</man>
<woman>俪</woman>
</item>
<item ID="101">
<surname>皇甫</surname>
<man>诩</man>
<woman>郦</woman>
</item>
<item ID="102">
<surname>尉迟</surname>
<man>野</man>
<woman>翎</woman>
</item>
<item ID="103">
<surname>澹台</surname>
<man>邦</man>
<woman>然</woman>
</item>
<item ID="104">
<surname>公冶</surname>
<man>寅</man>
<woman>婉</woman>
</item>
<item ID="105">
<surname>公输</surname>
<man>彪</man>
<woman>芙</woman>
</item>
<item ID="106">
<surname>淳于</surname>
<man>靖</man>
<woman>莎</woman>
</item>
<item ID="107">
<surname>单于</surname>
<man>霍</man>
<woman>萝</woman>
</item>
<item ID="108">
<surname>申屠</surname>
<man>阳</man>
<woman>巧</woman>
</item>
<item ID="109">
<surname>公孙</surname>
<man>诚</man>
<woman>弥</woman>
</item>
<item ID="110">
<surname>仲孙</surname>
<man>澈</man>
<woman>宁</woman>
</item>
<item ID="111">
<surname>轩辕</surname>
<man>烈</man>
<woman>宓</woman>
</item>
<item ID="112">
<surname>令狐</surname>
<man>之</man>
<woman>宜</woman>
</item>
<item ID="113">
<surname>钟离</surname>
<man>淳</man>
<woman>娉</woman>
</item>
<item ID="114">
<surname>宇文</surname>
<man>潇</man>
<woman>素</woman>
</item>
<item ID="115">
<surname>长孙</surname>
<man>寰</man>
<woman>衣</woman>
</item>
<item ID="116">
<surname>慕容</surname>
<man>默</man>
<woman>桐</woman>
</item>
<item ID="117">
<surname>鲜于</surname>
<man>融</man>
<woman>芷</woman>
</item>
<item ID="118">
<surname>闾丘</surname>
<man>萧</man>
<woman>若</woman>
</item>
<item ID="119">
<surname>司徒</surname>
<man>翰</man>
<woman>昭</woman>
</item>
<item ID="120">
<surname>司空</surname>
<man>勋</man>
<woman>九</woman>
</item>
<item ID="121">
<surname>屠苏</surname>
<man>涛</man>
</item>
<item ID="122">
<surname>端木</surname>
<man>刀</man>
</item>
<item ID="123">
<surname>乐正</surname>
<man>尚</man>
</item>
<item ID="124">
<surname>拓跋</surname>
<man>少</man>
</item>
<item ID="125">
<surname>夹谷</surname>
<man>叔</man>
</item>
<item ID="126">
<surname>谷梁</surname>
<man>伯</man>
</item>
<item ID="127">
<surname>楚</surname>
<man>子</man>
</item>
<item ID="128">
<surname>百里</surname>
<man>季</man>
</item>
<item ID="129">
<surname>南门</surname>
<man>白</man>
</item>
<item ID="130">
<surname>呼延</surname>
</item>
<item ID="131">
<surname>归海</surname>
</item>
<item ID="132">
<surname>岳</surname>
</item>
<item ID="133">
<surname>帅</surname>
</item>
<item ID="134">
<surname>琴</surname>
</item>
<item ID="135">
<surname>梁丘</surname>
</item>
<item ID="136">
<surname>左丘</surname>
</item>
<item ID="137">
<surname>西门</surname>
</item>
<item ID="138">
<surname>商</surname>
</item>
<item ID="139">
<surname>南宫</surname>
</item>
<item ID="140">
<surname>第五</surname>
</item>
</root>
紧接着就是随机数工具类(无需挂载)以及 C#源码,直接挂在 相机身上即可
//==========================
// - FileName: PETools.cs
// - Created: true.
// - CreateTime: 2020/7/28 22:58:53
// - Email: 1670328571@qq.com
// - Region: China WUHAN
// - Description: 随机工具类
//==========================
using System;
public class PETools
{
public static int RDInt(int min, int max,Random rd = null)
{
if (rd == null)
{
rd = new Random();
}
//包含前面一个数,不包含后面一个数
int val = rd.Next(min, max + 1);
return val;
}
}
//==========================
// - FileName: XmlAnalysis.cs
// - Created: true.
// - CreateTime: 2020/7/29 1:14:28
// - Email: 1670328571@qq.com
// - Region: China WUHAN
// - Description: Xml读取
//==========================
using System;
using System.Collections;
using System.Collections.Generic;
using System.Xml;
using UnityEngine;
public class XmlAnalysis : MonoBehaviour
{
//姓氏列表
public List<string> surnameList = new List<string>();
//男性名字
public List<string> manList = new List<string>();
//女性名字
public List<string> womanList = new List<string>();
public const string RdNameConfig = "ResCfgs/rdname";
void Start()
{
InitRdConfigName();
InvokeRepeating("Test", 1f, 1f);
}
private void Test()
{
Debug.Log(GetRdNameData(false));
Debug.Log(GetRdNameData());
}
private void InitRdConfigName()
{
//读取
TextAsset xml = Resources.Load<TextAsset>(RdNameConfig);
//找到子节点
if (!xml)
{
Debug.LogError("路径错误" + RdNameConfig);
}
else
{
//需要引入 using System.Xml; 命名空间,
XmlDocument doc = new XmlDocument();
//加载文本
doc.LoadXml(xml.text);
//加载完成以后使用、root 为xml 根节点,不要写错了哦
XmlNodeList nodeList = doc.SelectSingleNode("root").ChildNodes;
//遍历子节点
for (int i = 0; i < nodeList.Count; i++)
{
//拿到某一个
XmlElement xmlElement = nodeList[i] as XmlElement;
//ID 不存在的时候直接跳过当前
if (xmlElement.GetAttributeNode("ID") == null)
{
continue;
}
//将获取到的字符串转换为想要的数据类型
int ID = Convert.ToInt32(xmlElement.GetAttributeNode("ID").InnerText);
//拿到 节点数据以后遍历每一条属性,然后保存起来
foreach (XmlElement e in nodeList[i].ChildNodes)
{
switch (e.Name)
{
//存储到列表中
case "surname":
surnameList.Add(e.InnerText);
break;
case "man":
manList.Add(e.InnerText);
break;
case "woman":
womanList.Add(e.InnerText);
break;
}
}
}
}
}
/// <summary>
/// 获取随机昵称
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
private string GetRdNameData(bool man = true)
{
//使用随机数工具类
System.Random rd = new System.Random();
//随即范围为 0 - 基数减1
string rdName = surnameList[PETools.RDInt(0, surnameList.Count - 1)];
//如果是男性的话
if (man)
{
rdName += manList[PETools.RDInt(0, manList.Count - 1)];
}
else
{
//女性的时候
rdName += manList[PETools.RDInt(0, womanList.Count - 1)];
}
return rdName;
}
}
最后就是运行结果图了:
完美运行