标题: [文件操作] 批处理如何将一个txt文本分离成多个小txt文本? [打印本页]
作者: DDDYJQ1 时间: 2012-12-29 00:54 标题: 批处理如何将一个txt文本分离成多个小txt文本?
本帖最后由 pcl_test 于 2017-8-5 23:11 编辑
如何将一个.TXT分成上千个.TXT?
要求碰到以“*”开头的行,就重新分一个文件,并以"*"后的第一个汉字来重命名,如果"*"的汉字有重复的,用“*”的第一个汉字+“1、2、3....”另外重命名,也先谢了,
如
*哀哀欲绝 āi āi yù jué
绝:断气,死。形容极其悲痛。清·曹雪芹《红楼梦》第十三回:“那宝珠按未嫁女之礼在灵前哀哀欲绝。”
*哀兵必胜 āi bīng bì shèng
原意是力量相当的两军对阵,悲愤的一方获得胜利。后指受欺侮而奋起抵抗的军队,必定能取胜。《老子》第六十九章:“祸莫大于轻敌,轻敌几丧吾宝,故抗兵相加,哀者胜矣。” 不,~!不要乐,要哀,何**能弹《易水吟》的谱子吗?(《啼笑因缘续集》一0回)
*哀而不伤 āi ér bù shāng
*哀:悲哀;伤:伤害。忧愁而不悲伤。比喻做事没有过头也无不及。 《论语·八佾》:“子曰:‘《关雎》乐而不淫,哀而不伤。’” 她喜欢打扮,愿意有朋友,可是这都不过是一些小小的、~的、青春的游戏。(老舍《四世同堂》四十三)
就每个成语分一个文件,并以哀1、哀2、哀3重命名
作者: batman 时间: 2012-12-29 01:25
本帖最后由 batman 于 2012-12-29 01:35 编辑
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%a in (a.txt) do (
- set "str=%%a"
- if "!str:~,1!" equ "*" (
- set "a=!str:~1,1!"
- if not defined _!a! (
- set "filename=!a!"&set /a _!a!=0
- ) else (
- set /a _!a!+=1
- for %%b in (!a!) do set "filename=!a! !_%%b!"
- )
- )
- echo %%a>>"!filename!.txt"
- )
复制代码
作者: DDDYJQ1 时间: 2012-12-29 20:48
谢了,就这样
作者: taoyang231 时间: 2012-12-31 14:02
高手啊,行代码就搞定了
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |