8.5.22 SplitFileファイルを分割する

機能
ファイルを指定されたサイズで分割します。
JP1/Script 07-50以降では,ラージファイルが使用できます。
形式

SplitFile ( FilePath , SplitSize , 〔DirPath〕 , 〔Option〕 〔, SplitCnt〕 )

指定項目
FilePath
分割するファイルのフルパスを文字列,または値を格納した変数名で指定します。
SplitSize
分割するサイズを数値,または値を格納した変数名で指定します。サイズはバイト単位で指定します。
ラージファイルでも,分割するサイズの最大値は,2,147,483,647バイトです。
DirPath
分割したファイルを格納するフォルダ名を文字列,または値を格納した変数名で指定します。
この値は省略できます。省略した場合,FilePathで指定されたファイルが存在するフォルダを仮定します。
Option
オプションを指定します。
この値には次の値を指定できます。
意味
Deleteファイルを分割後,FilePathで指定されたファイルを削除します。
SplitCnt
分割したファイル数を受け取る変数名を指定します。必要がない場合は省略します。
説明
指定されたファイルを指定されたサイズで分割し,分割したファイルを指定されたフォルダに格納します。コマンドが正常に実行された場合は真(True)を,エラーが発生した場合は偽(False)を,コマンドの実行結果として返します。
分割したファイルのファイル名はFilePathで指定されたファイル名の末尾に拡張子.XXX(XXXは001からの数字で,999を超えた場合1000からの数字)を付加した値になります。
補足
Windows VistaまたはWindows Server 2008で,環境変数ProgramFiles(通常はシステムドライブのProgram Filesフォルダ),またはWinDir(通常はシステムドライブのWindowsフォルダ)に設定されているフォルダ下のファイル,またはフォルダを指定する場合,注意が必要です。詳細は,「1.8.3 コマンドの動作」を参照してください。

' ファイル"C:¥FDCOPY.TXT"を1.44MBのFDに格納できるように
'分割して,FDに格納する。
' (参考)1.44MBのFD = 1423KB = 1423 * 1024B
'       1.25MBのFD = 1221KB = 1221 * 1024B
'        720KBのFD =  713KB =  713 * 1024B
'        640KBのFD =  640KB =  640 * 1024B
Dim  file1 ,size1 ,splCnt ,filePath
file1 = "FDCOPY.TXT"
size1 = 1423 * 1024
SplitFile ( "C:¥"+file1 ,size1 ,_TEMP_ , ,splCnt )

Dim  cnt1

' 分割したファイル数分,FDを作成する
For  cnt1 = 1 To splCnt
 filePath = _TEMP_+file1
 Select Case  Len ( cnt1 )
   Case 1
     filePath = filePath+".00"+cnt1
   Case 2
     filePath = filePath+".0"+cnt1
   Case Else
     filePath = filePath+"."+cnt1
 End Select

 ' 一時ファイルをFDへコピー
 Copy ( filePath ,"A:¥" ,Overwrite )
 If  splCnt - cnt1 <= 0  Then
   MessageBox ( "FDへの複写が終了しました。" ,OK )
   Exit For
 End
 MessageBox ( cnt1+1+"枚目のFDに交換してください。" ,OKCancel )
 If  _MSG_RTN_ = Cancel  Then
   Exit For
 End
Next

対象バージョン
JP1/Script 05-10以降