C语言程序从文件中读取字符串

编写了一个简易的ATM机程序,用到了文件指针,将所有的账户信息都放在一个TXT文档里面,其中姓名、性别是用的字符串,账号什么的是用的整形变量。问题来了:运行一次之后将操作后的数据保存在TXT之后,第二次运行程序不能从txt中读取到字符串(姓名,性别)!这里不能上传代码文件,希望给位大神不吝赐教,有心人加QQ:153435836(注明百度知道),到时候将代码文件发给大神,求大神修改!

学了结构体了没?
学过结构体就用以下方法读写文件

/* 写文件 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 用户信息结构体
struct user_info{
char name[30]; // 姓名
char sex[10]; // 性别
int id; // 帐号
};

int main(){
FILE *fp = fopen("user_info.txt","w+b"); // 创建一个文件
if(fp == NULL){ // 如果创建文件失败
perror("fopen()");
return -1;
}

struct user_info u;
strcpy(u.name, "xiaoming");
strcpy(u.sex, "boy");
u.id = 12345678;

fwrite(&u, sizeof(u), 1, fp); // 把信息写入到文件中

close(fp);
return 0;
}

/* 读文件 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct user_info{
char name[30]; // 姓名
char sex[10]; // 性别
int id; // 帐号
};
int main(){
FILE *fp = fopen("user_info.txt","r+b"); // 打开一个文件
if(fp == NULL){ // 如果打开文件失败
perror("fopen()");
return -1;
}

struct user_info u;
fread(&u, sizeof(u), 1, fp); // 把读取文件
// 打印读取的信息
printf("name:%s sex:%s id:%d\n", u.name, u.sex, u.id);

close(fp);
return 0;
}追问

大神,能不能加QQ,我将我的代码发给你帮你看看

追答

QQ 2089256306

请回答 : 编程爱好者

温馨提示:答案为网友推荐,仅供参考
相似回答