掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB2005のファイル読込でDo While Not EOFを使用するには? (ID:144450)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
いつもお世話になります。VB2005でテキストファイル(中身は1レコードのみ)をFileOpen関数の ランダムアクセスを使用し、FileGet関数で値を取得しました。しかし、取得後に続くDo While Not EOF〜LOOP内の 処理が実行されません。同じファイルでVB6版で使用したら問題なく実行されたのですが。 どのように対応したらよろしいのでしょうか? よろしくお願い致します。 ソース Structure TypeUkeData ' テキスト・データ部(Length = 2048) <VBFixedArray(7), MarshalAs(UnmanagedType.ByValArray, SizeConst:=8)> Dim b_UkeDate() As Byte '受付日 <VBFixedArray(7), MarshalAs(UnmanagedType.ByValArray, SizeConst:=8)> Dim b_UkeTime() As Byte '受付時刻 <VBFixedArray(3), MarshalAs(UnmanagedType.ByValArray, SizeConst:=4)> Dim b_UkeCnt() As Byte '件数 <VBFixedArray(79), MarshalAs(UnmanagedType.ByValArray, SizeConst:=80)> Dim b_UkeNaiyo() As Byte '内容 Public Sub Initialize() ReDim b_UkeDate(7) ReDim b_UkeTime(7) ReDim b_UkeCnt(3) ReDim b_UkeNaiyo(79) End Sub End Structure Sub ReadFile Dim b_UkeData As TypeUkeData Dim i_FileNo As Short Dim i_RecNo As Short call b_UkeData.Initialize() i_FileNo = FreeFile() FileOpen(i_FileNo, "C:\UkeData.tmp", OpenMode.Random, , , 100) ' 最初のレコードを読み込む i_RecNo = 1 FileGet(i_FileNo, b_UkeData, i_RecNo) ←b_UkeDataに確かに値は入っている Do While Not EOF(i_FileNo) ←ループ内の処理に一度も入らず次のFileCloseにいってしまう CALL SubSpilit(b_UkeData) ' 次のレコードを読み込む i_RecNo = i_RecNo + 1 FileGet(i_FileNo, b_UkeData, i_RecNo) Loop FileClose(i_FileNo) End Sub
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.