中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-11 06:04
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]怎么用批处理批量转存txt文件? 查看 742 回复 3
楼 主 [求助]怎么用批处理批量转存txt文件? 发表于 2009-02-01 14:16 ·  中国 广东 深圳 福田区 电信
新手上路
积分 13
发帖 4
注册 2009-01-31 14:04
17年会员
UID 137700
性别 男
状态 离线

————————————————————————————————
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块。因属论坛新手,故暂不予以处罚,望今后引起注意。
——管理员
————————————————————————————————



我从网上下载了很多txt格式的电子书。但其编码不是2进制的。在我的手机看到的全是乱码,但在电脑上把其内容存倒另一个txt中就可解决这个问题(应该是很傻的办法)。或许有其他办法,但我想用批处理来做我刚才所描述的过程,要怎么做呢?
顺便看看我的菜鸟代码有什么问题:(我的文件是放在h:\123中)
h:
dir h:\123> h:\1.txt
setlocal EnableDelayedExpansion
for /r . %%A in (h:\123) do for /f "skip=7 tokens=4 delims= " %%a in (1.txt) do echo %%a > h:\2.txt & for /f %%B in (2.txt) do set p=%%B & type %p%*.txt > e:\%p%.txt
::把文件名从1.txt中提取出来(可能会不完整) 放到2.txt中 再把2.txt中的每行(即文件名)赋给p 再把%p%*.txt type 进%p%.txt中(考虑到文件名提取得不完整,所以用*)
pause
但运行结果~~~~~~~~~
我刚接触批处理几天相当的不懂
还望各位指点指点。
2 发表于 2009-02-01 15:14 ·  中国 上海 浦东新区 电信
新手上路
积分 19
发帖 12
注册 2008-10-11 10:48
17年会员
UID 128059
性别 男
状态 离线
首先,是编码格式不被识别的问题,一般便携机只能识别ASCI编码的文本文件。
这个情况我曾经遇到过。

其次,cmd下似乎识别Unicode而不识别UTF-8。
你可以保存相应格式的文件,用“type filename”验证。

固:
1. 若是unicode格式,可用批处理解决,也可另寻编码转换工具。
2. 若还是可能只能用后者解决了。
抓住规律、结果整齐、代码简洁
3 发表于 2009-02-01 21:58 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
这里有两个编码转换的工具,看看能不能用上
http://baiy.cn/#命令行工具_batch_wide_find_-_replace

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
4 发表于 2009-02-01 22:04 ·  中国 广东 深圳 福田区 电信
新手上路
积分 13
发帖 4
注册 2009-01-31 14:04
17年会员
UID 137700
性别 男
状态 离线
谢谢啊!!!!!!!!!!!
论坛跳转: