中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-12 13:56
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [请教]txt文件转换成xls文件 查看 1,128 回复 6
楼 主 [请教]txt文件转换成xls文件 发表于 2008-10-08 13:52 ·  中国 上海 上海地面通信息网络有限公司
中级用户
★★
积分 240
发帖 115
注册 2008-03-10 19:31
18年会员
UID 112561
性别 男
状态 离线
能不能把txt文件里的内容按一定的格式写入xls文件?
比如:
test.txt里有:
Model:AMM0008
Number:PA829082DA6
PA829082DA6-1-P
PA829082DA6-2-P
PA829082DA6-3-P
PA829082DA6-4-P
PA829082DA6-5-P
PA829082DA6-6-P
把它变成xls文件,格式如下图。
附件
XLS.JPG
2 发表于 2008-10-08 16:11 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
是不是这个意思?
@echo off
type nul>a.csv
for /f "usebackq delims=" %%a in ("C:\test\test.txt") do (
set /p =%%a,<nul>>a.csv
)
echo.>>a.csv
3 发表于 2008-10-08 21:31 ·  中国 上海 上海地面通信息网络有限公司
中级用户
★★
积分 240
发帖 115
注册 2008-03-10 19:31
18年会员
UID 112561
性别 男
状态 离线
Originally posted by HAT at 2008-10-8 16:11:
是不是这个意思?
@echo off
type nul>a.csv
for /f "usebackq delims=" %%a in ("C:\test\test.txt") do (
set /p =%%a,<nul>>a.csv
)
echo.>>a.csv


就是这个意思啊, 太感谢了,HAT.
能帮忙详细解释下 set /p =%%a,<nul>>a.csv 中的,<nul?
就象set /p = contents <nul 中的<nul是什么意思?
谢谢...............................................

[ Last edited by terrytong on 2008-10-8 at 22:38 ]
4 发表于 2008-10-09 01:50 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
总的来说set /p =%%a,<nul就是为了把所有的行合并成一行,中间以逗号隔开
逗号是csv文件的默认列分隔符,所有%%a后面有一个逗号
<nul是为了自动应答前面的set /p从而实现行合并,相关用法可以在本版搜索一下
5 [请教]xls文件转换成txt文件 发表于 2009-09-03 06:33 ·  中国 浙江 湖州 电信
新手上路
积分 3
发帖 3
注册 2009-08-25 00:49
16年会员
UID 150913
性别 男
状态 离线
求大大可以将xls文件转换成txt文件,
要求:批处理语句将规则的XLS文件转换成txt文件。txt文件中可以有空格(由于XLS中有换行符的原因)
6 发表于 2009-09-08 23:15 ·  中国 天津 联通
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
无法实现,上面的 txt 转换成 “xls” 其实不是真正的 xls 格式,而是普通的 csv 文件。
xls 是二进制文件,不能通过文本操作来读取它的内容。
可以尝试脚本用 Excel.Application 来操作。
7 Re 5楼 发表于 2009-09-09 05:53 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
纯批处理不行,调用VBS可以。
论坛跳转: