VB.Net2003でバイナリファイル作成

このQ&Aのポイント
  • VB.Net2003でバイナリファイルを作成する方法について教えてください。
  • バイナリファイル作成について調べてもよくわからないので、VB.Net2003での方法を教えてください。
  • VB.Net2003初心者ですが、バイナリファイルを作成するための手順を教えてください。
回答を見る
  • ベストアンサー

VB.Net2003でバイナリファイル作成

すいません。VB.Net2003初心者です。 いろいろ調べましたが、よく解らないので教えていただけないでしょうか。 下表1のようなバイナリファイルを作成したいのですが、うまくいきません。 どのようにしたら作成できるのでしょうか、教えてください。 表1 [offset]: +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F 0123456789ABCDEF ---------------------------------------------------------------------------- 00000000: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000090: 00 00 35 35 33 30 30 30 35 00 00 00 00 00 00 00 ..5530005....... 000000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

Imports System Imports System.IO Class ExampleClass Shared Sub Main() Dim Fs As FileStream = New FileStream("binfile.dat", _ FileMode.Create, FileAccess.Write, FileShare.None) Dim out As BinaryWriter = New BinaryWriter(Fs) out.write(CByte(4)) Dim i As Integer For i=1 To 16*9 + 1 out.write(CByte(0)) Next Dim str As String = "5530005" out.write(str.ToCharArray()) For i=1 To 16+7 out.write(CByte(0)) Next out.Flush() out.Close() End Sub End Class

wingtodo
質問者

お礼

ありがとうございます!! できました! 助かりました。

関連するQ&A

  • linuxでファイル内容の置換について

    ファイルのabcdefを含む行に対して、最後の「-」以外の「-」の前に「.c」を挿入したいのですが、何か良い方法はありませんでしょうか。 よろしくお願いいたします。 置換前: FALSE /abcdef/ FALSE 1451919600 abcdef %8B%A6-%95%97-%95a-%8D%91-%92%B2-%8A%F8-%96%9C-%89%B0-%90%AB-%89%B0%95a%95%97-%8B%A6%92%B2%90%AB-%96%9C%8D%91%8A%F8-4be8672275e58bc12b941d73fa5365a22b820d825cee506f0598338d65b16717-20160104 置換後: FALSE /abcdef/ FALSE 1451919600 abcdef %8B%A6.c-%95%97.c-%95a.c-%8D%91.c-%92%B2.c-%8A%F8.c-%96%9C.c-%89%B0.c-%90%AB.c-%89%B0%95a%95%97.c-%8B%A6%92%B2%90%AB.c-%96%9C%8D%91%8A%F8.c-4be8672275e58bc12b941d73fa5365a22b820d825cee506f0598338d65b16717-20160104

  • VBスクリプト 文字列操作

    VBスクリプト(全くの初心者です)について教えてください。 例えば "test.csv" にて 1,a 1,b 1,c 1,d 2,a 2,b 3,d 3,e 4,a 4,f 4,g のファイルがあるとします。 最初の1列目の数字(文字列)の行数は可変です。 最終的に "test2.csv" 1,a,b,c,d 2,a,b 3,d,e 4,a,f,g というファイルを作りたいのですが,ずばりコードを教えていただけないでしょうか。

  • VB(VBA)で、バイナリデータを使ってテキストファイルを作成したいの

    VB(VBA)で、バイナリデータを使ってテキストファイルを作成したいのですが、 例えば、"A"が一文字のみのShift-JIS もしくはunicodeのテキストファイルを作るため、 (下記の確認はShift-jis で行っています。) Dim ByteData As Byte ByteData = AscW("A") Open "C:\A.txt" For Binary Access Write As #1 Put #1, 1, ByteData Close #1 としました。 できあがったファイルをバイナリエディタで確認すると、  41 となっています。 (Unicode は 41 00 2バイト文字でリトルエンディアンのため) この41は、"A" の文字コード(Shift-JIS)「65」の16進表記です。 この「41」という値を使ってバイナリモードでテキストファイルを作成したいのですが、 どのようにすればよいでしょうか? 上記 Put #1, 1, ByteData の部分を、 1.Put #1, 1, 41 としたところ、通常表示はできないファイルができあがったみたいです。 バイナリモードで 「29 00 20 20」でした。 文字コード00 に該当する文字がないためだと思います。 2.Put #1, 1, "41" としたところ、「41 」(バイナリモードで 「34 31 20 20」) (41の後ろは半角空白) で×でした。 3.Put #1, 1, CLng("&H" & 41) としたところ、通常表示はできないファイルができあがったみたいです。 バイナリモードで 「41 00 00 00」でした。 4.ByteData = CLng("&H" & 41) Put #1, 1, ByteData これでやっとできました。 この他にも方法があるのか?と思い、質問させていただきました。 ご指導よろしくお願いいたします。

  • エクセルで一列おきに空白列を入れたい

    ABCDEF・・・ の表を A B C D E F ・・・ のように一列空白の列を入れたいのですがどうすればいいのでしょうか。

  • VBスクリプトでcsvファイルを比較

    別々のCSVファイルがありますが同じ形式にしておいて、 a.csv a,b,c b.csv d,e,f aとd、bとe、cとfと順番に比較する方法を教えて頂けますでしょうか。

  • バイナリーで保存

    お世話になります。 VB6を使いプログラムを作成しているのですがデーター「 A,B,C,愛 」 をUNICODE でバイナリ形式で保存したいのですが手順がわかりません。 どなたか教えていただけないでしょうか。 よろしくお願いします。

  • 2つの表を合わせた表3作成したい

    表1 A B  C  D  E  F G  H  I  名称 1 01 00 00 00 00 000 00 00 00  あ 2 01 01 00 00 00 000 00 00 00  い 3 01 01 01 00 00 000 00 00 00  う 4 01 01 01 01 00 000 00 00 00  え 5 01 01 01 01 01 000 00 00 00  お 6 01 01 01 01 01 001 00 00 00  か 7 01 01 01 01 01 001 01 00 00  き 8 01 01 01 01 01 001 01 01 00  く 9 01 01 01 01 01 001 01 01 01  け 10 01 01 01 01 01 001 01 01 02  こ 20 01 01 01 01 01 001 01 02 00  阿 21 01 01 01 01 01 001 01 02 01  居 22 01 01 01 01 01 001 01 02 02  卯 100 02 00 00 00 00 000 00 00 00  亜 101 02 01 00 00 00 000 00 00 00  医 102 02 01 01 00 00 000 00 00 00  宇 AからIの欄には入る数字によって名称が変わります。 表2 A  B  C  D  E  F G  H  I   1 01 01 01 01 01 001 01 01 01  2 01 01 01 01 01 001 01 01 02  3 01 01 01 01 01 001 01 01 03  4 01 01 01 01 01 001 01 02 01  5 01 01 01 01 01 001 01 02 02  6 02 01 01 01 01 001 01 01 01  この2つの表を合わせた表3を作成したいのです。 表3 A  B  C  D  E  F  G  H  I 1 01あ 01い 01う 01え 01お 001か 01き 01く 01け 2 01あ 01い 01う 01え 01お 001か 01き 01く 02こ  3 01あ 01い 01う 01え 01お 001か 01き 01阿 01居  4 01あ 01い 01う 01え 01お 001か 01き 01阿 02卯

  • 数値 バイナリ 保存

    お世話になります。先日からUNICODE と バイナリ形式の保存にはまっています。 10進数 30を16進にすると1E ですが、手元に 1E 00 00 00 とバイナリエディタで 読めるファイルがあります。 このようなファイルを VB で作成するにはどうすれば良いでしょうか。 よろしくお願いいたします。      

    • ベストアンサー
    • Java
  • バイナリファイルとバイナリ文字列の違い

    がわかりません。 例えば >http://e-words.jp/w/E38390E382A4E3838AE383AAE58897.html をみるとバイナリ列は1バイトを連ねたものだというらしいです。 つまり【文】という文字列を文字コードUTF-8でバイト配列化すると [1] => 230 [2] => 150 [3] => 135 となります。 (これはPHPでunpackかけましたが他の言語のGetBytes()などでも同じバイト値がでました。) この【文】という文字列はバイナリ列になるわけですよね? 例えばこの【文】という文字だけを保存したbun.txtというファイルはバイナリーファイルに なるのでしょうか? バイナリファイルの定義をみると >http://e-words.jp/w/E38390E382A4E3838AE383AAE38395E382A1E382A4E383AB.html 上記URLだと >文字コードの範囲などを考慮せずに作成されたファイル というのがバイナリファイルであるとあります。 つまりバイナリファイルとは 1バイト・・つまり8ビット(0~255)までの数値で表したものを連ねたもので なおかつ、文字コードなどの解釈を一切行わなずに、バイト値のみが記述されたデータと おもってもよいのでしょうか?

  • VB6.0でのバイナリアクセス

    VB6.0でバイナリアクセスでファイルをオープンした場合、 例えば、test.datというファイルに 111110000011111 と書き込まれていて、 この[00000]の部分を消去して、 1111111111 というファイルを作成するにはどうしたらよいでしょうか? ただ、これを同一ファイル上で行いたいのです。 ですので、新たにtest2.datを作るとか、 test2.datを作ったあとにリネームするということはしたくないのです。 宜しくお願いいたします。

専門家に質問してみよう