游戏本地化的时候可能需要搜索工程代码中的中文字符。

这个可以通过加载文件一行一行读取后,通过正则来查询。

下面的代码LoadFile函数通过流加载文件,FindFile通过递归病使用DirectoryInfo类和FileInfo类读取子目录和文件,并通过正则匹配出中文字符。

使用时需要引用

using System.Text.RegularExpressions;
using System.IO;

        



<span style="white-space:pre">  </span>public static ArrayList infoall;public static List<string> FileNames = new List<string>(); [MenuItem("Localization/Check Porject Chinese File")]public static void CheckChinese(){FileNames.Clear ();string dir = Application.dataPath + "/Scripts";FindFile(dir);Debug.Log ("包含中文的文件共" + FileNames.Count + "个");for(int i = 0; i < FileNames.Count; i++){Debug.Log ("包含中文的文件" + i +"           " + FileNames[i]);}}public static ArrayList LoadFile(string path,string name){//使用流的形式读取StreamReader sr =null;try{sr = File.OpenText(path+"//"+ name);}catch(Exception e){//路径与名称未找到文件则直接返回空return null;}string line;ArrayList arrlist = new ArrayList();while ((line = sr.ReadLine()) != null){//一行一行的读取//将每一行的内容存入数组链表容器中arrlist.Add(line);}//关闭流sr.Close();//销毁流sr.Dispose();//将数组链表容器返回return arrlist;} public static void FindFile(string dirPath) //参数dirPath为指定的目录{//在指定目录及子目录下查找文件,在listBox1中列出子目录及文件DirectoryInfo Dir=new DirectoryInfo(dirPath);foreach(DirectoryInfo d in Dir.GetDirectories())//查找子目录{FindFile(d.FullName);}foreach(FileInfo f in Dir.GetFiles("*.cs")) //查找文件{bool haveChinese = false;infoall = LoadFile(Dir.ToString(),f.Name);Regex rxChinaCharacter = new Regex ("[\u4e00-\u9fa5]+");  //正则匹配中文字符for(int i = 0 ;i < infoall.Count;i++){MatchCollection matches = rxChinaCharacter.Matches(infoall[i].ToString());if (matches.Count > 0){haveChinese = true;Debug.Log("文件名:"+f.FullName + "                     行号:"+ i + "                   内容" + infoall[i].ToString());}}if(haveChinese)FileNames.Add(f.FullName);}}

查找unity工程代码中中文字符相关推荐

  1. python_1.统计字符串中,中文字符,英文字符、数字、空格和其他字符的个数?

    小题内容: 用户从键盘输入一行字符,统计并输出其中文字符,英文字符.数字.空格和其他字符的个数? """日期:20/8/26题目:统计不同字符的个数内容:用户从键盘输入一 ...

  2. Python中中文字符也算单个字符

    1 致谢 感谢嵩天老师.黄天羽老师和礼欣老师的讲授 十分生动形象 令我受益匪浅 链接如下: http://www.icourse163.org/learn/BIT-268001?tid=1002235 ...

  3. SpringMVC项目中中文字符乱码问题及解决办法总结(非专业最优解决办法) -- ajax传值乱码; request.getParameter()乱码;

    SpringMVC项目中中文字符乱码问题及解决办法总结(非专业最优解决办法) -- ajax传值乱码; request.getParameter()乱码; 参考文章: (1)SpringMVC项目中中 ...

  4. Unity 在代码中 动态改变RectTransform位置及宽高 的方法整理

    原文链接(尊重原著):[100个 Unity实用技能] | Unity 在代码中 动态改变RectTransform位置及宽高 的方法整理_unity 修改recttransform_呆呆敲代码的小Y ...

  5. calltreetest中文_calltree查看工程代码中的函数调用关系

    今天使用了calltree这个源码函数关系查看工具,结果很直观,但安装过程有点点繁琐,现将其安装过程记录下来,免得以后忘了. 当我们查一个比较大的项目的代码时,往往函数间的关系比较复杂,如果直接看源码 ...

  6. Unity工程代码规范检测工具

    分享一个之前开发的一个Unity工程的代码检测工具,先说一下特性: 1.工程必须要建立git仓库 2.会创建pre-commit,因此如果本身有钩子要先备份,然后初始化后整合precommit文件 3 ...

  7. unity 在代码中创建spine动画组件

    项目中用到了spine动画,使用Assetbundle打包后,在手机上运行会出现丢材质的情况.如果不进行打包,直接放到Resources目录下是可以正常加载的,但是,这样包就会很大,而且也不能进行热更 ...

  8. 查找linux所有目录中包含字符,Linux查找目录下包含有某字符串的全部文件

    linux系统中,若是你想在当前目录下查找全部包含"phpernote"字符串的文件,能够这样输入命令:html grep -rn "phpernote" *j ...

  9. Unity 在代码中利用Mesh实时生成圆环/空心圆柱

    本篇文章主要介绍了利用Unity中的mesh 实时生成圆环的过程以及思想,我会在开头直接放出源码.如若有任何疑问,可向后继续观看详细解说~~~ (PSPSPS:Mesh生成的顺序,方式等有很多,当前代 ...

最新文章

  1. 开发者被要求向破解者道歉,竟揪出“阿里云假员工”,网友:这人有前科
  2. 如何优化UPS的工作模式为数据中心节省运营成本
  3. 关于范围for语句的使用
  4. 命令行下Apache日志统计举例
  5. 7-7 旅游规划 (8 分)
  6. IIC软件模拟-读写EEPROM
  7. 女子驾驶蔚来汽车被迫停留长安街超1小时 官方回应:司机连续误操作
  8. Visual C# 对话框全接触
  9. python 多线程就这么简单
  10. [转载] Python内置函数-min函数和max函数-详解
  11. 分类战车SVM全系列
  12. Java8新特性-Lambda表达式
  13. 小程序轮播图swiper,自定义的指示点
  14. 历史上的一些重大芯片诞生回顾-推动行业发展
  15. 日均5亿查询量,京东到家订单中心ES架构演进
  16. UOJ #138. 【UER #3】开学前的涂鸦
  17. 推荐系统通用用户表征预训练研究进展
  18. MyEclipse如何配置Tomcat
  19. 沈南鹏@《遇见大咖》: A轮没投,投了8个月以后就证明了张一鸣是对了,在美国都没有张一鸣这种模式...
  20. 分析:全球千亿美元市值IT企业榜单及点评

热门文章

  1. python3 从尾部读取_Python3基础:列表详解
  2. 报错org.apache.htrace htrace-core4 4.1.0 incubating htrace-core4.jar 报错spark
  3. 统计学习/机器学习常用小知识
  4. linux --开机自动挂载硬盘【转】
  5. 最大似然估计_状态估计的基本概念(2)最大似然估计和最大后验估计
  6. 深度学习之卷积神经网络(4)LeNet-5实战
  7. android framework,GitHub - zhaozepeng/Android_framework: android framework 用来快速开发的android框架...
  8. 『设计模式』就因为多收了我2块5,我追着收银员问是不是不懂设计模式--策略模式
  9. [kubernetes] 资源管理 --- 资源预留实践
  10. 分析PCB技术印制电路板的可靠性设计(z)