本帖最后由 tmplinshi 于 2012-12-4 09:56 编辑
好长。- @echo off
- setlocal enabledelayedexpansion
-
- REM 设置文件名
- set File="a.txt"
-
- REM 统计文本行数
- for /f %%a in ('find /c /v "" ^< %file%') do set #=%%a
-
- REM 将第一行每一列的字符设为变量
- set /p Line1=<%file%
- for %%a in (%Line1:* =%) do set ~%%a=1
-
- REM --------------------------------------------------
- set _Start=
-
- (
- for /l %%a in (1 1 %#%) do (
- set OldStr=
- set NewStr=
- set /p OldStr=
-
- if not defined _Start (
-
- set NewStr=!OldStr!
- set _Start=1
-
- ) else (
-
- if defined OldStr (
- for %%a in (!OldStr!) do (
- if not defined NewStr (
- set NewStr=%%a
- ) else (
- if defined ~%%a (
- set NewStr=!NewStr! %%a 1
- ) else (
- set NewStr=!NewStr! %%a 0
- )
- )
- )
- ) else (
- set _Start=
- )
-
- )
-
- echo,!NewStr!
- )
- ) <%file% >Result.txt
复制代码
|