标签:
 void GenerateXML(Dictionary<string, PrefabDict> dict)
    {
        string xmlPath = Application.dataPath + "/Editor/CharactersEffectPoint/EffectPointsInfo.xml";
        if (File.Exists(xmlPath))
        {
            Debug.Log(xmlPath);
            File.Delete(xmlPath);
        }
        XmlDocument xmlDoc = new XmlDocument();
        XmlDeclaration xmldecl;
        xmldecl = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null);
        XmlElement root = xmlDoc.DocumentElement;
        xmlDoc.InsertBefore(xmldecl, root);                 
        XmlElement infoBase = xmlDoc.CreateElement("InfoBase");   //创建根节点,最上层节点 角色名
        xmlDoc.AppendChild(infoBase);
        foreach (var dic in dict)
        {
            XmlElement characterInfo = xmlDoc.CreateElement("effectPointsInfo");
            infoBase.AppendChild(characterInfo);
XmlElement characterKey = xmlDoc.CreateElement("Character");
            XmlElement Head_C_EffectPoint = xmlDoc.CreateElement("Head_C_EffectPoint");
            XmlElement Head_T_EffectPoint = xmlDoc.CreateElement("Head_T_EffectPoint");
            XmlElement Hand_L_EffectPoint = xmlDoc.CreateElement("Hand_L_EffectPoint");
            XmlElement Hand_R_EffectPoint = xmlDoc.CreateElement("Hand_R_EffectPoint");
            XmlElement Foot_L_EffectPoint = xmlDoc.CreateElement("Foot_L_EffectPoint");
            XmlElement Foot_R_EffectPoint = xmlDoc.CreateElement("Foot_R_EffectPoint");
            XmlElement Chest_EffectPoint = xmlDoc.CreateElement("Chest_EffectPoint");
            XmlElement Bottom_EffectPoint = xmlDoc.CreateElement("Bottom_EffectPoint");
            XmlElement Weapon01_EffectPoint = xmlDoc.CreateElement("Weapon01_EffectPoint");
            XmlElement Normal_HurtPoint = xmlDoc.CreateElement("Normal_HurtPoint");
            XmlElement Special_HurtPoint = xmlDoc.CreateElement("Special_HurtPoint");
            XmlElement Footsteps_EffectPoint = xmlDoc.CreateElement("Footsteps_EffectPoint");
characterKey.InnerText = dic.Key.ToString();
            Head_C_EffectPoint.InnerText = dic.Value.Head_C_EffectPoint.ToString();
            Head_T_EffectPoint.InnerText = dic.Value.Head_T_EffectPoint.ToString();
            Hand_L_EffectPoint.InnerText = dic.Value.Hand_L_EffectPoint.ToString();
            Hand_R_EffectPoint.InnerText = dic.Value.Hand_R_EffectPoint.ToString();
            Foot_L_EffectPoint.InnerText = dic.Value.Foot_L_EffectPoint.ToString();
            Foot_R_EffectPoint.InnerText = dic.Value.Foot_R_EffectPoint.ToString();
            Chest_EffectPoint.InnerText = dic.Value.Chest_EffectPoint.ToString();
            Bottom_EffectPoint.InnerText = dic.Value.Bottom_EffectPoint.ToString();
            Weapon01_EffectPoint.InnerText = dic.Value.Weapon01_EffectPoint.ToString();
            Normal_HurtPoint.InnerText = dic.Value.Normal_HurtPoint.ToString();
            Special_HurtPoint.InnerText = dic.Value.Special_HurtPoint.ToString();
            Footsteps_EffectPoint.InnerText = dic.Value.Footsteps_EffectPoint.ToString();
            characterInfo.AppendChild(characterKey);
            characterInfo.AppendChild(Head_C_EffectPoint);
            characterInfo.AppendChild(Head_T_EffectPoint);
            characterInfo.AppendChild(Hand_L_EffectPoint);
            characterInfo.AppendChild(Hand_R_EffectPoint);
            characterInfo.AppendChild(Foot_L_EffectPoint);
            characterInfo.AppendChild(Foot_R_EffectPoint);
            characterInfo.AppendChild(Chest_EffectPoint);
            characterInfo.AppendChild(Bottom_EffectPoint);
            characterInfo.AppendChild(Weapon01_EffectPoint);
            characterInfo.AppendChild(Normal_HurtPoint);
            characterInfo.AppendChild(Special_HurtPoint);
            characterInfo.AppendChild(Footsteps_EffectPoint);
}
        xmlDoc.Save(xmlPath);            //创建EffectPointsInfo.xml文件
        AssetDatabase.Refresh();
        this.ShowNotification(new GUIContent("数据生成:" + xmlPath));
    }
标签:
原文地址:http://www.cnblogs.com/DragonXin/p/4665341.html