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

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
青熊

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

#1

投稿記事 by 青熊 » 15年前

fopenで繰り返し追記された構造体を読み込む方法を探しています。

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

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

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

softya

Re:fopen

#2

投稿記事 by softya » 15年前

読み込むなら
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

#3

投稿記事 by たかぎ » 15年前

念のため確認します。

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

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

青熊

Re:fopen

#4

投稿記事 by 青熊 » 15年前

ありがとうございます。
先頭から順番に読み込めばよかったのですね……何か勘違いしていたようでした。

青熊

Re:fopen

#5

投稿記事 by 青熊 » 15年前

すみません、解決マーク忘れてました

閉鎖

“C言語何でも質問掲示板” へ戻る