vbs实现的支持拖动的txt文本切割器

时间:2022-11-24 21:59:45

SplitFile.vbs

  1. '/*=========================================================================     
  2. ' * Intro       .txt文本切割器,默认为8000个字符切为一个文件。支持拖动。     
  3. ' * FileName    SplitFile.vbs     
  4. ' * Author      yongfa365     
  5. ' * Version     v1.0     
  6. ' * MadeTime    2008-04-24 12:58:43     
  7. ' * LastModify  2008-04-24 12:58:43     
  8. ' *==========================================================================*/     
  9.  
  10. Set objArgs = WScript.Arguments     
  11. If objArgs.Count = 0 Then    
  12.     IIIII InputBox("选择要处理的文本文件", , "选择要处理的文本文件")     
  13. Else    
  14.  
  15.     For I001 = 0 To objArgs.Count - 1     
  16.         IIIII objArgs(I001)     
  17.     Next    
  18. End If    
  19.  
  20. Function IIIII(Path)     
  21.     TempStr = ReadFromFile(Path, "gb2312")     
  22.     Length = Len(TempStr)     
  23.     iii = 0     
  24.     For II = 0 To Length step 8000 '8000个字符切为一个文件     
  25.         iii = iii + 1     
  26.         WriteToFile Left(Path, Len(Path) -4) & "_" & Right("00" & iii, 3) & ".txt" , Mid(TempStr, II + 1, 8000), "gb2312"    
  27.     Next    
  28. End Function    
  29.  
  30.     
  31.  
  32. Function ReadFromFile(FileUrl, CharSet)     
  33.     Dim Str     
  34.     Set stm = CreateObject("Adodb.Stream")     
  35.     stm.Type = 2     
  36.     stm.mode = 3     
  37.     stm.charset = CharSet    
  38.     stm.Open    
  39.     stm.loadfromfile FileUrl     
  40.     Str = stm.readtext     
  41.     stm.Close    
  42.     Set stm = Nothing    
  43.     ReadFromFile = Str     
  44. End Function    
  45.  
  46. '按指定编码存储文件     
  47.  
  48. Function WriteToFile (FileUrl, Str, CharSet)     
  49.     Set stm = CreateObject("Adodb.Stream")     
  50.     stm.Type = 2     
  51.     stm.mode = 3     
  52.     stm.charset = CharSet    
  53.     stm.Open    
  54.     stm.WriteText Str     
  55.     stm.SaveToFile FileUrl, 2     
  56.     stm.flush    
  57.     stm.Close    
  58.     Set stm = Nothing    
  59. End Function