ページ 11

fopen"ab"で書き込まれた構造体リストの読み込み方法

Posted: 2010年1月27日(水) 14:23
by 青熊
fopenで繰り返し追記された構造体を読み込む方法を探しています。

FILE fp = open(*FilePass,"ab");
fwrite(Save_Data, sizeof(savedata_t), 1, fp ) ;

このようにして構造体を次々とファイルに書き込んでいるのですが(ログファイルであるため)、
この書き込まれた構造体全てを上手く読み込む方法はあるでしょうか。
読み込む対象としては構造体savedata_tの配列か、連結リストを想定しています。

そもそも書き込む際に一行づつ書き込む、というのは最終手段でお願いします。
よろしくお願いします。

Re:fopen

Posted: 2010年1月27日(水) 15:23
by softya
読み込むなら
FILE fp = fopen(*FilePass,"rb"); // ← たかぎさんのツッコミで修正。
fread(Save_Data, sizeof(savedata_t), 1, fp ) ;
while( !feof(fp) ) {
//Save_Dataを何処かへコピー
fread(Save_Data, sizeof(savedata_t), 1, fp ) ;
}
で問題なく読み込めると思いますが。
こんな事聞いてないと思うので、もっと具体的に質問して下さいね。 画像

Re:fopen

Posted: 2010年1月27日(水) 16:10
by たかぎ
念のため確認します。

> fopenで
> FILE fp = open(*FilePass,"ab");

fopenかopenかどちらでしょう?

Re:fopen

Posted: 2010年1月27日(水) 16:46
by 青熊
ありがとうございます。
先頭から順番に読み込めばよかったのですね……何か勘違いしていたようでした。

Re:fopen

Posted: 2010年1月27日(水) 16:46
by 青熊
すみません、解決マーク忘れてました