IPod text splitter (VBS version)

Time:2020-1-13

So I wrote this short and concise script version of the divider in my spare time in summer vacation. The biggest benefit of the script version can be DIY by the user.
I won’t say much about the specific situation. You can refer to the problem of TXT coding, iPod text divider
Here is just a description of how to use it. Just drag and drop the txt file you need to split and send it to this script.
The following is the script code, directly copy it and save it as a VBS file!
Good Luck !

Copy codeThe code is as follows:
‘————————————————————
‘ Description : Text division for iPod text reading.
‘ because of iPod can not display text length
‘ more than 4KB in each file, we have to split
‘ the bigger one.
‘ And iPod intrenal use Unicode, so this script
‘ can also tranfrom the character coding.
‘ Author : [email protected]
‘ Last Modified : 2008-8-31 11:05:13
‘————————————————————
Option Explicit
Sub OpenDir(Dir)
Dim WShell,CmdString
Set WShell = CreateObject(“WScript.Shell”)
CmdString = “Explorer.exe ” & Dir
WShell.Run CmdString,1,True
End Sub
Function FormatStrNum(iNum)
Const Mode = “0000”
Dim sNum
sNum = CStr(iNum)
FormatStrNum = Left(Mode,Len(Mode)-Len(sNum)) & sNum
End Function
Function IIf(test,a,b)
If test = True Then IIf = a Else IIf = b
End Function
Function GetDragDropFile
If Wscript. Arguments. Count = 0 then msgbox “please drag and drop the txt file to be split onto this script! “
WScript.Quit
Else
Dim fso
Set fso = CreateObject(“Scripting.FileSystemObject”)
If (fso.FileExists(WScript.Arguments(0))) Then
GetDragDropFile = WScript.Arguments(0)
Set fso = Nothing
Else
Set fso = Nothing
Msgbox ‘cannot find file’ & wscript.arguments (0)
WScript.Quit
End If
End If
End Function
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
Const TristateTrue = -1
Const TristateUseDefault=-2
Const TristateFalse=0
Dim ToWrite
Dim Index
Dim fso
Dim src
Dim dst
Dim TextSize
Dim MaxTextLength
Dim SourceFile
Dim DestinationFile
Dim BaseName
Dim OutFolderPath
Dim IsUnicode
Dim regEx,patrn
‘***************************************************************
‘ Splited text size .
TextSize = 4 ‘KB
IsUnicode = True
‘*****************************************************************
MaxTextLength = 1024 * TextSize / 2 – 1
patrn = “(\r\n\r\n)+|( +)”
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global = True

Set fso = CreateObject(“Scripting.FileSystemObject”)
BaseName = fso.GetBaseName(GetDragDropFile)
OutFolderPath = fso.BuildPath(fso.GetParentFolderName(GetDragDropFile),_
BaseName)
Set src = fso.OpenTextFile(GetDragDropFile, ForReading,False,_
TristateUseDefault)
If Not fso.FolderExists(OutFolderPath) Then
fso.CreateFolder OutFolderPath
End If
Index = 1
While(src.AtEndOfStream <> True)
ToWrite = src.Read(MaxTextLength)
DestinationFile = fso.BuildPath(OutFolderPath,BaseName & _
FormatStrNum(Index) & “.txt”)
Set dst=fso.OpenTextFile(DestinationFile,ForWriting,True,IIf(IsUnicode,TristateTrue,TristateUseDefault))
Dim SlimText
SlimText = regEx.Replace(ToWrite,””)
dst.Write SlimText
dst.Close
Set dst = Nothing
Index = Index + 1
Wend
src.Close
Set src = Nothing
Set fso = Nothing
Set regEx = Nothing
OpenDir OutFolderPath

Recommended Today

RCAST 35: add type to currency

– font ALT: Simsun; MSO font charset: 134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 680460288 22 0 262145 0;} @font-face {font-family:”Cambria Math”; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:1; mso-generic-font-family:roman; mso-font-format:other; mso-font-pitch:variable; mso-font-signature:0 0 0 0 0 0;} @font-face {font-family:Calibri; Variable; Ose-1: 216301111; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 680460288 22 0 262145 0;} /\* Style […]