中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 08:05
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]fr.exe能不能处理unicode格式的文本 查看 906 回复 10
楼 主 [求助]fr.exe能不能处理unicode格式的文本 发表于 2009-08-26 05:56 ·  中国 广东 电信
新手上路
积分 11
发帖 11
注册 2009-04-19 08:22
17年会员
UID 143282
性别 男
状态 离线
fr.exe能不能处理unicode格式的文本,是不是要加什么参数,还是根本就不能处理
2 发表于 2009-08-26 10:07 ·  中国 北京 海淀区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
不能处理
用WFR可以了

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
3 发表于 2009-08-26 10:20 ·  中国 北京 海淀区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
wfr
  - 支持多国语言的字符串批量查找和替换
  - 批量字符集编码转换

bwfr
  - 支持多国语言的字符串批量查找和替换
  - 批量字符集编码转换

作者网站http://baiy.cn

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
4 发表于 2009-08-26 12:03 ·  中国 广东 电信
新手上路
积分 9
发帖 9
注册 2009-05-14 00:45
17年会员
UID 145032
性别 男
状态 离线
还是不行,我用
wfr.exe -ric:"(^creatyear=)(.*)" -t:"creatyear=2009\r\n" "config.ini"

处理文本(config.ini):
data=36kb
creatyear=2008

没有任何反应

http://upload.cn-dos.net/img/1667.rar 文本地址
5 发表于 2009-08-26 16:35 ·  中国 北京 海淀区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
确实是编码的原因,
我也搞不清楚这些编码的关系
靠,第一次感觉编码这么可恨
WFR 说支持UNICODE的,但是用-encin:unicode 指定输入输出都为UNICODE,却是不行的
郁闷

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
6 发表于 2009-08-26 17:31 ·  中国 北京 海淀区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
wfr -ric:"(^creatyear=)(\d+)" -t:"\12009" -encin:UCS-2 config1.ini
start config1.ini

看了N多文章之后,试着指定用UCS-2编码,替换成功了

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
7 发表于 2009-08-26 22:48 ·  中国 江西 联通
新手上路
积分 9
发帖 9
注册 2009-05-14 00:45
17年会员
UID 145032
性别 男
状态 离线
wfr -ric:"(^creatyear=)(\d+)" -t:"\12009" -encin:UCS-2 -encout:UNICODE config1.ini

因为处理后config.ini保存的格式是GB312,而导致程序无法读取INI文件,所以我再后面加了句 -encout:UNICODE ,出现以下错误:

## Incompatible text encoding convertion detected: encoding from "UCS-2" to "UNICODE" will lost infomation and should not be used. use: "wfr -listcmp" for a list of the compatible convertion combinations. or use "-force" to enforce the convertion.
并且程序未对INI文件作任何处理,请问这是怎么回事儿
8 发表于 2009-08-26 23:18 ·  中国 江西 联通
新手上路
积分 9
发帖 9
注册 2009-05-14 00:45
17年会员
UID 145032
性别 男
状态 离线
高手们来帮帮我啊
9 发表于 2009-08-26 23:27 ·  中国 北京 西城区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
我们可以看到记事本支持4种编码格式:ANSI、Unicode、Unicode big endian、UTF-8。如果读者看过《谈谈Unicode编码》,对Unicode、Unicode big endian、UTF-8应该不会陌生,其实它们更准确的名称应该是UTF-16LE(Little Endian)、UTF-16BE(Big Endian)和UTF-8,它们是基于Unicode的不同编码方案。

http://blog.csdn.net/fmddlmyy/archive/2007/02/14/1510189.aspx

UNICODE等于UTF-16LE
wfr -ric:"(^creatyear=)(\d+)" -t:"\12009" -encin:UTF-16LE config1.ini
start config1.ini

改成这样试试

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
10 发表于 2009-08-26 23:58 ·  中国 江西 联通
新手上路
积分 9
发帖 9
注册 2009-05-14 00:45
17年会员
UID 145032
性别 男
状态 离线
还是不行 结果有变成了 GB312 真麻烦yishanju 要是真不行的话 哎~
11 发表于 2009-08-27 10:12 ·  中国 北京 海淀区 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
我不知道你是怎么弄的,我试了处理过的INI文件都是UNICODE编码。

[ Last edited by yishanju on 2009-8-27 at 10:14 ]

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
论坛跳转: