• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBSでNull文字を半角スペースへ置換)

VBSでNull文字を半角スペースへ置換する方法

このQ&Aのポイント
  • VBSでNull文字を半角スペースへ置換する方法についてお知恵を頂きたいです。バイナリデータを文字列として取得する際に、Scripting.FileSystemObjectを使用して1行目は取得できるのですが、2行目がNull文字で読み込めずに[]となってしまいます。
  • 解決策として、ADODB.streamを使用してNull文字を半角スペースへ置換しようとしていますが、データの比較部分で躓いています。
  • 具体的には、ary1配列にデータを格納する際に、Null文字の場合は半角スペースに置換したいのですが、どのようにすれば良いか分かりません。ご教授頂けると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • dell_OK
  • ベストアンサー率13% (776/5748)
回答No.1

読み込みの処理がなかったので勝手に追加しました。 Dim strm Set strm = CreateObject("ADODB.stream") strm.Open strm.Type = 1 strm.LoadFromFile (FilePath) Dim buf'読み込み用 buf = strm.Read(32)'読み込み Dim b'1バイト用 Dim ary1() ReDim ary1(31) Dim i For i = 0 To 31 b = AscB(MidB(buf, i + 1, 1))'1バイト取得して数値に変換 If b <> 0 Then '←変換した数値がゼロでないかどうか ary1(i) = b'←そのままの値 Else ary1(i) = 20 '半角スペース End If Next

saka_1965
質問者

お礼

dell_OK様 早速のご教授ありがとうございます。 Dim buf'読み込み用 buf = strm.Read(32)'読み込み b = AscB(MidB(buf, i + 1, 1))'1バイト取得して数値に変換 If b <> 0 Then '←変換した数値がゼロでないかどうか ary1(i) = b'←そのままの値 この情報でもう少し試行錯誤してみます。 又質問させていただく際にはよろしくお願いいたします。 本当にありがとうございました。

関連するQ&A