- ベストアンサー
VBAでバイト型データをファイルとして保存
VBAで、バイト型のデータをファイルに保存したいのですが、 どうしたらよいのでしょうか? 例:strByte() As Byteという変数を作って、 この中にstrByte(0)からstrByte(20000)くらいまでの データが作成されます。 これをbytedata.xmlとして作成したいのです。 FileSystemObjectではテキストでないからなんか ダメなようですが。。 困っております。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
バイト配列にデータが出来上がっているのであれば必要な部分までにReDim Preserve で配列を切り詰めておいてBinaryモードで出力する といった手順で良いのではないですか? ReDim Preserve strByte(200) fn = FreeFile Open "samplexml" for binary as #fn Put #fn,,strByte Close #fn といった具合ですが … これだと具合が悪いのでしょうか?
その他の回答 (2)
- redfox63
- ベストアンサー率71% (1325/1856)
xmlファイルにしたいとのことですが <item>Data</item> といったテキストデータにしたいってことですか?
補足
実際は、GoogleMapのデータをエクセルでデータを入力して、 エクセル上にボタンをはってそれを押せばGooglemap用の xmlデータを作成したいのです。 Googlemapで要求するxmlはUTF-8で保存したものを 要求しているので、このような質問をいたしました。 ですので、エクセルデータをいったんxmlの要求するフォーマット に加工して、その文字列をUTF-8で変換するまでVBA内で実現して おり、UTF-8変換後のデータはバイト型になるのです。 前は、xml文字列をテキストデータとして保存して、 terapadなどテキストエディタで開いて、文字コードを 変えて保存していました。 この手間を省くためにVBAで一気にできないかにトライして いて壁にあたった次第です。
- dsuekichi
- ベストアンサー率64% (171/265)
> VBAで、バイト型のデータをファイルに保存 VBAの標準ファイル操作機能を使って、 「Openステートメント」で、Binaryモードでファイルを開いて、 「Putステートメント」で書き込むとか・・・
お礼
できました! ありがとうございました!