Board logo

标题: [文本处理] [已解决]请问BAT如何在空行自动生成按顺序排列的数字? [打印本页]

作者: 每天几分    时间: 2012-10-20 12:21     标题: [已解决]请问BAT如何在空行自动生成按顺序排列的数字?

本帖最后由 每天几分 于 2012-10-20 13:08 编辑

比如:
飞狐外传

雪山飞狐

连城诀

天龙八部

射雕英雄传

白马啸西风

鹿鼎记

笑傲江湖

书剑恩仇录

神雕侠侣

侠客行

倚天屠龙记

碧血剑

鸳鸯刀
……
在空行中自动生成按顺序排序的数字即:
飞狐外传
1
雪山飞狐
2
连城诀
3
天龙八部
4
射雕英雄传
5
白马啸西风
6
鹿鼎记
7
笑傲江湖
8
书剑恩仇录
9
神雕侠侣
10
侠客行
11
倚天屠龙记
12
碧血剑
13
鸳鸯刀
……
作者: apang    时间: 2012-10-20 13:03

  1. Set FSO = CreateObject("Scripting.FileSystemObject")
  2. Set File = FSO.OpenTextFile("a.txt",1)
  3. A = Split(File.ReadAll,vbCrLf)
  4. For i = 0 To UBound(A)
  5.    If Trim(A(i)) = "" Then
  6.       N = N + 1
  7.       Str = Str & N & vbCrLf
  8.    Else
  9.       Str = Str & A(i) & vbCrLf
  10.    End If
  11. Next
  12. FSO.CreateTextFile("b.txt",True).Write Str
复制代码
保存为test.vbs,与a.txt放在同一位置,试试看
作者: 每天几分    时间: 2012-10-26 18:08

回复 2# apang


    请问这个vbs还能再改善一下么,我想在生成的数字前后加上- 数字 -这种符号。
即:
飞狐外传
- 1 -
雪山飞狐
- 2 -
连城诀
- 3 -
天龙八部
- 4 -
射雕英雄传
- 5 -
白马啸西风
- 6 -
鹿鼎记
- 7 -
笑傲江湖
- 8 -
书剑恩仇录
- 9 -
神雕侠侣
- 10 -
侠客行
- 11 -
倚天屠龙记
- 12 -
碧血剑
- 13 -
鸳鸯刀
……
作者: forfiles    时间: 2012-10-26 18:40

回复 3# 每天几分
  1. Set FSO = CreateObject("Scripting.FileSystemObject")
  2. Set File = FSO.OpenTextFile("a.txt",1)
  3. A = Split(File.ReadAll,vbCrLf)
  4. For i = 0 To UBound(A)
  5.     If Trim(A(i)) = "" Then
  6.         N = N + 1
  7.         Str = Str & "- " & N & " -" & vbCrLf
  8.     Else
  9.         Str = Str & A(i) & vbCrLf
  10.     End If
  11. Next
  12. FSO.CreateTextFile("b.txt",True).Write Str
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2