昨天在倒腾输入法的词库,就是将某输入法的词库导出后导入到另一种输入法中。摸索了许久,方法应该是没有问题了,只是在导入的时候,txt文件太大了(有9万行),导入程序处于“卡死”的状态,等了半小时都没有恢复过来。结果只能无奈中途放弃结束进程,如果能将这个大文件 txt 分割成一段段的小文件,分批导入,应该能解决问题。

  于是写了一段 PowerShell 的批处理程序(Windows 7 及以上操作系统适用),网上找的很多不行,这段代码经本人亲测可行:

@echo off
color 0a
echo 说明:请把要分割的文本文件重命名为test.txt,此BAT程序和TXT须在同一目录下。
echo 请输入按多少行分割TXT文件,并回车。
set /p n=
powershell -c "$n=1;$m=1;gc 'test.txt'|%%{$f=''+$m+'.txt';$_>>$f;if($n%%%n% -eq 0){$m++};$n++}" 
pause

  操作非常简单!程序运行后,输入要分割的行数即可!如下图:

 txt分割批处理

  程序将根据行数在自动分割并在当前目录下生成:1.txt、2.txt、3.txt……