C# 讀取Xml文件中的中文


這是.xml中的內容
<?xml version="1.0" encoding="utf-8"?>
<resources>
  <!-- ArenaPackage - ArenaPanel -->
  <string name="ql5l3sgiojb59-n10_ojb5" mz="txt_des">叕說明</string>
  <!-- ArenaPackage - canjiaBtn -->
  <string name="ql5l3sgipzlco-n3_bl1b" mz="n3">開始游戲</string>
  <!-- ArenaPackage - ChakanpaimingPanel -->
  <string name="ql5l3sgix1kg1e-n20_i6io" mz="txt_title">查看分數</string>
</resources>

 




    public static void FindXmlAndReadyToRead() { try { List<String> fileNames = new List<string>(); String Path = ".\\Xml"; DirectoryInfo folder = new DirectoryInfo(Path); //找到當前路徑下,所有包含.xml格式的文件的名字 for (int i = 0; i < folder.GetFiles("*.xml").Count(); ++i) { fileNames.Add(folder.GetFiles("*.xml")[i].Name); } if (fileNames.Count <= 0) { Console.WriteLine("Xml文件夾下無xml文件"); return; } foreach (String fileName in fileNames) { Console.WriteLine(fileName); String filePath = Path + "\\" + fileName; ReadXml(filePath); } //字典排序,通過key.length的大小,從大到小排序 dict = dict.OrderByDescending(o => o.Key.Length).ToDictionary(o => o.Key, p => p.Value); } catch (Exception e) { Console.WriteLine("當前目錄無Xml文件夾(需要將.xml文件放在Xml文件夾下):" + e.ToString()); } }

         

     //讀取xml中包含中文的,去重,去掉包含叕    
  public static void ReadXml(String Path)

  { XmlDocument document = new XmlDocument(); document.Load(Path); XmlNode xn = document.SelectSingleNode("resources"); XmlNodeList xnl = xn.ChildNodes; List<String> lists = new List<string>(); foreach (XmlNode xnode in xnl) { String line = xnode.InnerText; //不包含叕 int ignore = line.IndexOf("叕"); if (ignore <= -1) { //提取中文 Regex regex = new Regex("[\u4e00-\u9fa5]+"); MatchCollection mc = regex.Matches(line); if (mc.Count > 0 && !dict.ContainsKey(line)) { //將所有包含中文的字符串都放在字典里
               //所有讀出去的xml包含中文的內容都在dict的key里,之后可以通過遍歷dict的key寫入到文本
dict.Add(line, "1"); } } } }

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM