找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27258|回复: 11

[文本处理] 批处理如何判断1.txt文件内容中,是否包含中文?

[复制链接]
发表于 2021-2-1 11:16:13 | 显示全部楼层 |阅读模式
批处理如何判断1.txt文件内容中,是否包含中文?
发表于 2021-2-1 12:29:11 | 显示全部楼层
批用第三方,其它语言可以判断字节数。
发表于 2021-2-1 19:50:54 | 显示全部楼层
本帖最后由 路过 于 2021-2-1 19:55 编辑

把1.txt转换为UTF-8格式;如果里面有中文,转换后文件体积增大。
如果1.txt本身是UTF-8格式,转换成ANSI;如果里面有中文,转换后文件体积减小。
转换文件的编码可以用VBS脚本

纯批实现会比较困难,需获取文件的行数,然后获取每一行并计算长度。如果没有中文则行数*2+字符数=字节数。
发表于 2021-2-1 22:08:29 | 显示全部楼层
本帖最后由 WHY 于 2021-2-2 16:13 编辑
  1. PowerShell "$a=@(gc 1.txt) -match '[\u4E00-\u9FFF]';if($a.Count){'Yes'}else{'No'}"
复制代码
 楼主| 发表于 2021-2-2 08:47:02 | 显示全部楼层
回复 4# WHY
代码不对,什么情况都是Yes
发表于 2021-2-2 09:17:01 | 显示全部楼层
回复 5# 1078292299


    用附件把你测试的 1.txt 发出来我试试。
 楼主| 发表于 2021-2-2 14:45:23 | 显示全部楼层
这就是Yes,后面加几个汉字也一样Yes.
发表于 2021-2-2 15:52:40 | 显示全部楼层
  1. powershell -c "if ((gc 1.txt) -notmatch '[\p{IsCJKUnifiedIdeographs}]+'){'NO'} else {'YES'}"
复制代码
 楼主| 发表于 2021-2-2 16:10:03 | 显示全部楼层
回复 8# terse

感谢,顺便问一下 IsCJKUnifiedIdeographs 是什么意思?
发表于 2021-2-2 16:15:14 | 显示全部楼层
奇怪,不知道你啥系统
脚本已修改。
发表于 2021-2-2 16:25:13 | 显示全部楼层
回复 9# 1078292299
C——中文
J——日文
K——韩文
发表于 2021-2-7 17:29:54 | 显示全部楼层
学习学习学习学习学习学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 11:24 , Processed in 0.019870 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表