• ベストアンサー

VBによる可変長ファイルの読み書き

bruce1104の回答

  • ベストアンサー
  • bruce1104
  • ベストアンサー率18% (25/133)
回答No.1

データの間に","(カンマ)などがはいってるなど決ま毎があるのなら Private Sub subBunkai(ByVal strData As String,_ ByVal strKey As String, _ ByRef strARec As CRT.A_REC_TYPE) Dim lonLoop As Long If UBound(Split(strData, strKey)) <= 0 Then Exit Sub End If For lonLoop = 0 To UBound(Split(strData, strKey)) Select Case lonLoop Case 0 strARec .A= Split(strData, strKey)(lonLoop) Case 1 strARec .B = Split(strData, strKey)(lonLoop) Case 2 strARec .C = Split(strData, strKey)(lonLoop) Case 3 strARec .D = Split(strData, strKey)(lonLoop) End Select Next End Sub この関数を作成していけます。 strData には呼び元で取得したファイルデータをいれます。    例:"123,45678,ABC" strKey には可変長データを区切ってある区切り文字をいれます。    例:,(カンマ)など strARec モジュール.BASに作成した構造体です。 参考になるでしょうか?

関連するQ&A

  • VisualBasic6.0 バイナリでの読み書き

    VisualBasic6.0(AccessVBA)でバイナリ形式(EBICDIC)のファイルを読み書きしようとしています。 その際に以下の問題が発生してしまい原因が分からずに悩んでおります。 ■問題  ファイルの読み込みはファイルのサイズ(バイト数)分を一気に読込ます。  その後、VB側で1レコード(128バイト)単位に分割してファイル出力(PUT)しています。  このPUTを行うと、ファイルの先頭4バイトに(08001200)と出力されてしまいます。  この4バイトが出力される原因が分からず悩んでおります。 どなたかご存知の方がいらっしゃいましたらご回答いただけると助かります。 参考にバイナリエディタのキャプチャを添付いたします。 以上です。

  • 可変長構造体をファイルから読み込み処理

    可変長の構造体、 typedef struct 構造体(仮) { char c1,c2; float f1,f2; double d; int size; //↓strのサイズ char str[1]; //文字配列 }構造体(仮); の形式で書かれたバイナリデータファイルがあります。 そのファイルを読み込んでcsv形式で出力する処理を、 ファイルからの読み込む回数を減らしてやりたいと思っています。 その方法を教えていただけませんか? よろしくおねがいします。

  • VB2005を使ってバイナリファイルの中身をHEX変換してテキスト表示したい。

    VBは初心者ですが、以下のような事をVB2005を使って実現したいのですが、参考コーディングがありましたら教えて下さい。 ・バイナリファイルファイルの中身を可変の長さ(オープン時に変換の長さは決定している)をHEXに変換してテキスト表示したい。

  • バイナリーファイル読み書き

    現在あるクラスパスの通っているディレクトリーから バイナリーファイルを読み込み、書き込みを行おうとしております。 指定はフルパス形式ではなく、/sample/data/data.txt の様な形式で行います。 読み込みはFileInputStream、書き込みはFileOutputStreamにて 行います。通常のフルパス指定での読み書きを行える事は既に 確認済なのですが、上記の様な形式を読み込もうとするとエラーになります。 そこで、getResourceにより、ファイルを探索させて、得られたURLオブジェクトを 使用して読み書きを行いたいと思っておりますが、 どうしても、URLからFileOutputStreamあるいはFileInputStreamまでつながりません。 例えば、URLからURIに変換出来れば、その後FileクラスをURIから生成して、 FileOuputStream or FileInputStreamを生成する事が出来るのですが。。。 この例以外の方法でも構いません。よろしくお願いします。

  • VB6とAccess

    VB6(SP5)で、プログラミングをしております。 Jetを使ってAccessのファイルを読み書きしています。 配布先のPCにAccessがインストールされていない場合、サポートで、 内部のデータを見る必要があります。皆さん、どうしているのでしょうか ? また、何か良い方法があれば教えて下さい。 宜しくお願い致します。

  • バイナリファイル

    VBでバイナリファイルを読み込み、処理しようとしているのですが、VBではバイナリファイルを扱えないのでしょうか? APIしかないのでしょうか? 例) バイナリデータ:10(16進) 取扱データ:16(10進) 上記のことをしたいのですが、うまく扱えません。 CDecも"&H10"なら16として扱えるのですが、バイナリデータをそのまま数値化することができません。 何か良い方法があれば教えて下さい。

  • C言語でテキストファイルへのランダムアクセス

    こんにちは。 C言語を使い、CSVファイルで特定の通し番号が振られたレコード1行の値を 変数に格納したいのですがそれはできないのでしょうか? いろいろな参考書を確認するとバイナリファイルならランダムアクセスという方法で 任意の場所に直接アクセスできるらしいですが CSVなどのテキストファイルの場合、 一度ファイルの内容をすべて変数に読み込んで 変数内で検索するしかないのでしょうか? レコード数が多い場合でも変数にすべて読み込むしかないのでしょうか? ちなみにこんなファイルです。 001,山田 太郎,yamada tarou,東京,世田谷,08012341234 002,佐藤 二郎,satou jirou,北海道,釧路,09012341234 1カラム目は固定長、そのほかは可変長です。 ランダムアクセスで使うfseek関数はサイズで移動するらしいので 可変長のデータが含まれているとこの関数は使えないんじゃないかと思っています。 2カラム目には半角スペースも入っています。 1000レコードくらいです。 ご存知のかた、アドバイスお願いします。

  • 新MACBOOKでNTFSファイルを読み書き?

    新しく出たRetinaのMacBookProを買おうかを思っています。 しかし、これまで一度もマックを使ったことがありません。 仕事のデータや音楽、映像などのファイルは全部約6TBほどあり、NTFSでフォーマットされたNASに入っています。 WINDOWSのアプリケーションは仕方ないとしても、エクセル、ワードなどのデータや映像、音楽は読み書き出来て欲しいところです。 新しいマックOSでこれらは不自由なく快適な速度で読み書きできるのでしょうか? それともBootCampなどを使わないといけないでしょうか?

    • ベストアンサー
    • Mac
  • バイナリデータについて

    バイナリデータについて 先日関連した質問をさせていただいただのですが、 質問内容があやふやでしたのであらためて 今回POS連携システムにてPOSへ渡すデータを固定長バイナリ型式で作成いたします。 JAVAにてデータ作成を行うのですが、その作成方法がよくわかりません。 例えば次の6項目があるとして 元のデータ[0001] → 属性[K] 長さ[2Byte] 元のデータ[20100901] → 属性[K] 長さ[4Byte] 元のデータ[1234567890123456ffff] → 属性[K] 長さ[10Byte] 元のデータ[000100] → 属性[P] 長さ[3Byte] 元のデータ[0000001c] → 属性[P] 長さ[4Byte] 元のデータ[01] → 属性[B] 長さ[1Byte] 元のデータから各属性への変換、ファイル出力がイメージがわきません。 属性のK,P,Bというのもよくわかりません。 どなたかヒントでもいただけたら幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • Java
  • VB6とAccess No.2

    前回の質問の続きとなります。 VB6(SP5)で、プログラミングをしております。 Jetを使ってAccessのファイルを読み書きしています。 サポートで、内部のデータを見る必要があります。 Accessのファイルの内容を見たり、更新できるソフト を探しております。 ご存知の方、宜しくお願い致します。