iPod文本分割器(VBS版)
更新時(shí)間:2010年11月28日 20:53:44 作者:
前段時(shí)間,為了能在iPod Nano3上面看電子小說,偶寫了個(gè)C++版本的文件分割器,但是由于時(shí)間關(guān)系,沒有完成漢字編碼的工作,造成很多初級(jí)用戶不知道如何使用。
因此暑假閑暇編寫了這個(gè)簡短精悍的腳本版的分割器。腳本版的最大的好處可以由使用者進(jìn)行DIY。
具體情況就不多說了,關(guān)于txt編碼的問題可以參考,iPod文本分割器
這里僅僅說明使用方法,將您需要分割的Txt文件直接拖放發(fā)到本腳本上就ok了。
以下是腳本代碼,直接復(fù)制后保存為vbs文件就可以了!
Good Luck !
復(fù)制代碼 代碼如下:
'------------------------------------------------------------
' 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 : Guoyafeng@jspi.edu.cn
' 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 "請(qǐng)把需要分割的Txt文件拖放到本腳本上!"
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 "無法找到文件" & 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
相關(guān)文章
VBScript版的PHP extract()函數(shù)
這篇文章主要介紹了VBScript版的PHP extract()函數(shù),extract函數(shù)主要作用是把數(shù)組轉(zhuǎn)換成變量,非常好用的一個(gè)函數(shù),需要的朋友可以參考下2014-06-06定時(shí)自動(dòng)備份IIS的WWW日志的vbs腳本
定時(shí)自動(dòng)備份IIS的WWW日志的vbs腳本...2007-07-07VBS中FileSystemObject對(duì)象詳解(完整版)
今天在腳本之家看了幾篇關(guān)于vbs FileSystemObject的一些資料,發(fā)現(xiàn)不夠詳細(xì)與完整這里剛好發(fā)現(xiàn)了一篇更好的文章特整理一下,需要的朋友可以參考下2018-12-12SQLids.vbs 0.7(最終版,以后改成gui界面的)
今天搞了個(gè)網(wǎng)站,注入點(diǎn)過濾得很變態(tài),工具都不能跑,于是寫了這個(gè)東東。2009-10-10