中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-25 18:52
中国DOS联盟论坛 » 其它操作系统综合讨论区 » 如何住编码是Unicode的TXT文件写入内容,不显示乱码? 查看 3,866 回复 24
楼 主 如何住编码是Unicode的TXT文件写入内容,不显示乱码? 发表于 2007-10-30 08:16 ·  中国 广东 江门 电信
初级用户
积分 56
发帖 19
注册 2007-02-26 13:24
19年会员
UID 80230
性别 男
状态 离线
一般的TXT文件的编码是ANSI,
可用以下语句住TXT文件写入内容
echo wmp11>>x.txt
但若TXT文件的编码是Unicode时,用以上语句住TXT文件写入内容时,
写入的语句在TXT文件内显示乱码,“海ㅰ”റ
请问如何住编码是Unicode的TXT文件写入内容,不显示乱码?
2 发表于 2007-10-30 20:53 ·  中国 山东 济南 移动
钻石会员
★★★★★
积分 10,046
发帖 3,039
注册 2002-11-11 00:00
23年会员
UID 223
性别 男
状态 离线
dos下还是cmd下,如果是cmd,则可以试下cmd /u。
简单就是美
3 发表于 2007-10-31 23:04 ·  中国 广东 江门 电信
初级用户
积分 56
发帖 19
注册 2007-02-26 13:24
19年会员
UID 80230
性别 男
状态 离线
是在一个bat文件里
4 发表于 2007-11-19 13:11 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
我也遇到同样的问题,有达人指教一下吗?谢谢!
5 发表于 2007-11-19 13:17 ·  中国 河北 唐山 联通
银牌会员
★★★
积分 1,148
发帖 514
注册 2007-06-01 12:51
19年会员
UID 89959
性别 男
来自 河北
状态 离线
WINDOWS下我知道用Notepad2打开就不是乱码了
设置也可以不过偶不会
6 发表于 2007-11-19 13:18 ·  中国 河北 唐山 联通
银牌会员
★★★
积分 1,148
发帖 514
注册 2007-06-01 12:51
19年会员
UID 89959
性别 男
来自 河北
状态 离线
或者下个DJGPP DOS下, 如果有WINDOWS还是用楼上方法吧 DJGPP不太号找。可以试下

[ Last edited by shanliang8008 on 2007-11-19 at 01:19 PM ]
7 发表于 2007-11-19 13:36 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
用cmd /u是可以解决命令行的问题.但是不能解决batch的问题.
谢谢楼上,不过这样的话程序移植性就不行了...
继续向高手求救啊!!
8 发表于 2007-11-19 13:56 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
try this in batch script:
cmd /u /c "echo 歡迎來到中國DOS聯盟>>myfile.txt"
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
sinbao +1 2007-11-19 14:11
9 发表于 2007-11-19 14:11 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
谢谢斑竹!
10 发表于 2007-11-19 14:12 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
但是还有个问题.如果里面有很多echo 语句,那是不是要每个echo前面都加 cmd /u /c啊? 这个...似乎麻烦..
11 发表于 2007-11-19 15:17 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
继续呼唤...
12 发表于 2007-11-19 15:50 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
1、可以设置一个简单的变量,比如“set e=cmd /u /c ”,然后在echo语句前面加上%e%即可;

2、可以“for /F "delims=" %%a in ('findstr /i "^echo" %0') do @cmd /u /c %%a >>newfile.txt”试试。。。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
nipo +2 2008-05-11 12:12
13 发表于 2007-11-19 16:39 ·  中国 上海 电信数据中心
初级用户
★★
积分 184
发帖 73
注册 2007-05-24 18:06
19年会员
UID 89185
性别 男
状态 离线
还是稍显麻烦...
不能在全局设置一下,然后再call别的batch文件吗?

[ Last edited by sinbao on 2007-11-19 at 10:52 PM ]
14 发表于 2007-11-20 15:10 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
你可以试试:

cmd /u /k "call batch.bat"
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
lxmxn +4 2007-11-20 18:56
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
15 发表于 2007-11-20 18:56 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
Climbing 兄的方法果然可以!我怎么就没有想到呢,寒。。
论坛跳转: