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

编写了一个简易的ATM机程序,用到了文件指针,将所有的账户信息都放在一个TXT文档里面,其中姓名、性别是用的字符串,账号什么的是用的整形变量。问题来了:运行一次之后将操作... 编写了一个简易的ATM机程序,用到了文件指针,将所有的账户信息都放在一个TXT文档里面,其中姓名、性别是用的字符串,账号什么的是用的整形变量。问题来了:运行一次之后将操作后的数据保存在TXT之后,第二次运行程序不能从txt中读取到字符串(姓名,性别)!这里不能上传代码文件,希望给位大神不吝赐教,有心人加QQ:153435836(注明百度知道),到时候将代码文件发给大神,求大神修改! 展开
 我来答
留下痕迹的人生
推荐于2017-11-26 · TA获得超过513个赞
知道小有建树答主
回答量:305
采纳率:80%
帮助的人:208万
展开全部
学了结构体了没?
学过结构体就用以下方法读写文件

/* 写文件 */
#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

请回答 : 编程爱好者
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式