我想用批处理弄一个文本文件分割程序,功能是实现了,代码如下: 
@echo off 
cls & color 79 
setlocal enabledelayedexpansion 
:inputfilename 
set /p txtfile=请输入要分割的文件位置及文件名: 
if not defined txtfile goto :inputfilename 
set /p lines=请输入每多少行分割为一个文件(请输入50到300之间的数): 
if not defined lines set /a lines=100 
cls 
set /a line=0 
set /a files=1 
set filename=第!files!部分.txt 
mode con lines=2 
echo 正在写第1个文件... 
set str= 
for /f "delims=" %%i in (%txtfile%) do ( 
set /a line+=1 
set str=!str!%%i 
if "!line!"=="!lines!" ( 
echo !str!>!filename! 
cls 
set /a line=0 
set /a files+=1 
set filename=第!files!部分.txt 
echo 正在写第!files!个文件... 
set str= 
) 
) 
echo !str!>!filename! 
cls 
echo 完成。按任意键退出程序... 
pause>nul 
del c:\tmp 
但是留下一个问题,分割后的文件中,所有的回车符都显示成了黑块,但仅仅在记事本里这样,在写字板和Word里面都能正常显示。 并且用写字板打开之后,不做任何改动,直接保存,然后用记事本打开又正常了......
我觉得可能是因为set str=!str!%%i造成的,可能在%%i前面加一个能表示回车符的东西就行了,希望高手看看能不能这样做。 
如果有其他实现的方法,也请不吝赐教,谢谢!
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块,因属论坛新手,暂不予以处罚,但注册也有一年多了,应该对论坛有所熟悉了,望今后引起注意。
——管理员