![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
.NETで構造体をランダムファイルに書き込む処理を作成していますが、エラーになります。
構造体宣言は
Public Structure aaa
Public aa as DateTime
Public bb() as int16
Public Sub Init()
ReDim bb(100)
End Sub
End Structure
Public wData As New aaa
ファイル登録時に
FileOpen(iFileNo, sFileName, OpenMode.Random, , , len(wData))
FileOut(iFileNo, wData, iRecord)
上記のFilePutを実行した時点で、
「レコード長が正しくありません」
とエラーが出ます。
オープンするファイルナンバーやレコードは、
初回登録時は共に、1で問題ありません。
VBのイメージで作成したのですが、どうもうまくいきません。
なにとぞ、お教えください。
No.1ベストアンサー
- 回答日時:
構造体の構成に配列要素がある場合は、構造体の宣言で長さをあらかじめ宣言しなければなりません。
Public Structure aaa
Public aa As DateTime
<VBFixedArray(100)> Public bb() As Int16
Public Sub Init()
ReDim bb(100)
End Sub
End Structure
ありがとうございます。
文字列の場合、VBFlexedをつけるのは頭にあったのですが、
配列の場合にも必要とは。
考えれば、可変長をサポートするためのものであるのだから、配列でも必要ですよね。
ありがとうございました。
No.2
- 回答日時:
>ファイル登録時に
>FileOpen(iFileNo, sFileName, OpenMode.Random, , , len(wData))
>FileOut(iFileNo, wData, iRecord)
>上記のFilePutを実行した時点で、
FileOut になっていますが?
FileGet や wData への書き込みはどこでしているのですか?
VB6.0 でも書き込みは、Get 、Put していたはずですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) VBA リボンののリカバリーでオーバーフローエラーになります 2 2023/07/04 19:07
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) outlook マクロが終了しません。 1 2022/09/02 11:14
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
batファイルでレジストリキーの...
-
アクセスのクエリでコンパイル...
-
VBA ExecuteExcel4Macro 型が一...
-
Returnに対するGoSubがありません
-
fgets関数のEOFの扱い方について
-
access テキストボックスの値取得
-
【COBOL】read文でエラー
-
VBでファイルが開かれているか...
-
ExcelVBAで既に開いてるwordを...
-
ACCESS VBAでのインポート
-
FTPの送信結果を検知したい
-
Access2010 コンパイルエラー...
-
fcloseで発生するエラーについて。
-
エクセル「これ以上新しいフォ...
-
【VB6.0】ファイルからサイズの...
-
「引数が無効です」ACCESS
-
エクセルでシートを別のブック...
-
構造体をランダムファイルに書...
-
Excel VBA でFunctionが呼び出...
-
すでにファイルが開かれている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBでファイルが開かれているか...
-
batファイルでレジストリキーの...
-
Returnに対するGoSubがありません
-
VBから参照できないCのDLLを使...
-
「パス名が無効です」の発生原因
-
access テキストボックスの値取得
-
アクセスのクエリでコンパイル...
-
PowerShellを使って関連付けら...
-
freadでデータがない場合の読込...
-
【COBOL】read文でエラー
-
gccを行ってもexeファイルが生...
-
ファイルクローズ(fclose)でエ...
-
VB6 Dir関数で52エラー発生
-
ACCESS VBAでのインポート
-
NAS上のファイルの使用中が解除...
-
FTPの送信結果を検知したい
-
エクセルマクロでエラーの原因...
-
Access2013にてドラッグ&ドロ...
-
EXCELのVBAでWORDが開いてある...
-
fcloseで発生するエラーについて。
おすすめ情報