Board logo

标题: [求助]在文本文件中的指定位置换行 [打印本页]

作者: yycmu4     时间: 2008-9-22 23:27    标题: [求助]在文本文件中的指定位置换行
比如 test.txt中随便一段话: DOS,代表着自由开放与发展。我们努力起来,学习FreeDOS和Linux。自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧! 要求每个句号处都换行,变成如下: DOS,代表着自由开放与发展。 我们努力起来,学习FreeDOS和Linux。 自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧! 工作中急需,请教各位高手指点。谢谢!!!!

作者: HAT     时间: 2008-9-22 23:33
change "a.txt" /from "。" /to "。&H0D0A"
change.exe http://upload.cn-dos.net/img/427.zip

作者: yycmu4     时间: 2008-9-22 23:40    标题: 好快呀
谢谢,不过我想用批处理解决一下,有办法吗?

作者: lxmxn     时间: 2008-9-23 13:51
@echo off & setlocal

set "mystr=DOS,代表着自由开放与发展。我们努力起来,学习FreeDOS和Linux。自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!"

call :sodo "%mystr%"
pause&exit

:sodo
for /f "tokens=1* delims=。" %%a in ("%~1") do (
	if not "%%b" equ "" (echo/%%a。&&call :sodo "%%b") else (echo/%%a)
)
goto :EOF

作者: hhasee     时间: 2008-9-23 17:16
做一个批处理,内容如下: @echo off @echo DOS,代表着自由开放与发展。>>1.txt @echo 我们努力起来,学习FreeDOS和Linux。>>1.txt @echo 自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!>>1.txt 运行后可在1.TXT方件中生成你所提的文本输出!!

作者: yycmu4     时间: 2008-9-23 20:05
谢谢版主,学习中,如果文本的内容相当多,无法用set定义,又该如何?想就这一问题深入探讨一下。 五楼兄弟很幽默。

作者: lxmxn     时间: 2008-9-24 03:50    标题: Re: yycmu4
可以将文本内容放入文件中,然后用for /f命令来读取文件里的内容。

作者: HAT     时间: 2008-9-24 09:55
可以到这个帖子里看看类似的讨论 www.cn-dos.net/forum ...

作者: yycmu4     时间: 2008-9-24 18:04
问题解决了,谢谢大家