中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如果替换掉文本中的|变成回车
作者:
标题: 如果替换掉文本中的|变成回车 上一主题 | 下一主题
securecrt
新手上路





积分 2
发帖 2
注册 2009-2-4
状态 离线
『楼 主』:  如果替换掉文本中的|变成回车

有一段文本如下:
文件1.txt
中国|日本|美国


转换后的文件1.txt
中国
日本
美国

文件2
德国|英国

转换后的文件2.txt
德国
英国

本人新手,请高手赐教,谢谢
我关键的地方是 不知道回车在批处理里面怎么替换,可显字符还是很容易

2009-2-4 20:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 2 楼』:  搜索到的 vbs:


set fso=CreateObject("Scripting.FileSystemObject")
set file=fso.Opentextfile("文件1.txt")
set fileN=fso.Createtextfile("转换后的文件1.txt")
str=file.readall
strN=replace(str,"|",chr(10))
fileN.write strN
fileN.close


2009-2-4 21:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
securecrt
新手上路





积分 2
发帖 2
注册 2009-2-4
状态 离线
『第 3 楼』:  

非常感谢,测试通过,原先一直在想用bat批处理的变量替换...

2009-2-4 21:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 4 楼』:  

如果用FR的话 :

fr *.txt -ric:"\|" -t:"\r\n"




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2009-2-4 22:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
netbenton
银牌会员

批处理编程迷


积分 1916
发帖 752
注册 2008-12-28
来自 广西
状态 离线
『第 5 楼』:  

::如果只有5个"|",可以这样,更多的话,多执行几次就可以了。
::只是会丢掉原来的空行,连续两个或多个“|”时也不会有空行。

@echo off
for /f "tokens=1-5,* delims=|" %%a in ('type 1.txt^&cd.^>1.txt^') do (
(if not '%%a==' echo.%%a
if not '%%b==' echo.%%b
if not '%%c==' echo.%%c
if not '%%d==' echo.%%d
if not '%%e==' echo.%%e
if not '%%f==' echo.%%f)>>1.txt
)



精简
[你的+我的+他的]=>[大家的]    个人网志   
2009-2-4 22:49
查看资料  发送邮件  发短消息 网志  OICQ (37659560)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: