セーブしたファイルをロードして、その後再び、そのロードしたファイルに対して、入力、削除、表示などを行っていきたいのですがうまくいきません。
どなたか教えていただけないでしょうか?
分かりにくい質問かもしれませんがよろしくお願いします。
Pbook *fileroad( Pbook *head )
{
Pbook *pbook;
Pbook *temp;
pbook = head;
pbook = ( Pbook * )malloc( sizeof( Pbook ) );
head = ( Pbook * )malloc( sizeof( Pbook ) );
temp = ( Pbook * )malloc( sizeof( Pbook ) );
/* ファイルポインタ */
FILE *fp = NULL;
char Command = '\0';
char Filename[ TEXTSIZE ] = {'\0'};
char str_temp[ TEXTSIZE ] = {'\0'};
int i = '\0';
printf( "電話帳のファイルを開きますか?Yes/No(y/n)\n>>" );
Command = command( Command );
switch( Command )
{
case 'Y':
case 'y':
printf( "どのファイルを開きますか?\n>>" );
inputtext( Filename );
fp = fopen( Filename, "r" );
if( fp == NULL )
{
printf( "ファイルを開くことができませんでした。\n");
fclose( fp );
return ( head );
}
else
{
fgets( str_temp, TEXTSIZE, fp );
i = *str_temp;
while( i != NULL )
{
strcpy( temp->name, str_temp);
strcpy( temp->telnumber, str_temp);
temp->next = NULL;
pbook->next = temp;
fgets( str_temp, TEXTSIZE, fp );
i = *str_temp;
}
}
}
return ( head );
}