■ 環境
OS:Win2k
WSH:VBScript
いつも拝見させていただいております。
■ 現状ステータス
バイナリファイルをADODB.Streamオブジェクトで固定長読み込みし
改行コードを付加して出力するVBSファイルを作成しています。
本サイトの過去ログを参考にプロトタイプを作成し
小さいサイズのバイナリファイルでは
期待結果を得ることに成功しました。
■ 質問
読み込むバイナリファイルのサイズが20GB のため
- LoadFromFile メソッド でロード可能な限界ファイルサイズ
- ADODB.Stream オブジェクトに保持可能な限界ストリームサイズ
- SaveToFile メソッド で保存可能な限界ファイルサイズ
が気になっています。
上記3つの限界サイズについて
ネットで検索いたしましたがヒットしませんでしたので
どなたかご存知の方おられましたらご教授願いたく。
また上記3つの限界サイズが設定されていた場合
代替メソッド,代替ロジックとして、どのようなものがあるのかも
ご教授いただければ幸いです。
宜しく御願いいたします。
■ ソース(抜粋)
Const cintReadRecLen = 507 '読込固定レコード長
Dim objInStream
Dim objOutStream
Dim bytData
Dim bytCrLf
Set objInStream = CreateObject("ADODB.Stream")
objInStream.Open
objInStream.Type = adTypeBinary
objInStream.LoadFromFile(strFilePath)
If Err.Number=0 Then
'出力用ストリームのオープン
Set objOutStream = CreateObject("ADODB.Stream")
objOutStream.Open
objOutStream.Type = adTypeBinary
Do Until objInStream.EOS
'入力ファイルの内容を固定バイト取り出し
bytData = objInStream.Read(cintReadRecLen)
'読み込んだ内容+改行コードを出力用ストリームへ書出
objOutStream.Write(bytData)
objOutStream.Write(bytCrLf)
Loop
'出力ファイルへ出力用ストリームを書出
objOutStream.SaveToFile strFilePath & ".out", 2
objOutStream.Flush
objOutStream.Close
end if
ツイート | ![]() |