|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 读取数据出现乱码怎么回事
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
6505
人关注过本帖
标题:
读取数据出现乱码怎么回事
只看楼主
加入收藏
a892502843
等 级:
新手上路
帖 子:17
专家分:4
注 册:2016-5-24
第
11
楼
收藏
得分:0
回复 7楼 吹水佬
我如果先前录入2个或者3个员工后,文件储存了然后再开程序读取员工,除了第一个是正常的后面的就有问题了
[此贴子已经被作者于2016-5-26 23:11编辑过]
2016-05-26 22:59
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
12
楼
收藏
得分:0
以下是引用
a892502843
在2016-5-26 22:59:31的发言:
我如果先前录入2个或者3个员工后,文件储存了然后再开程序读取员工,除了第一个是正常的后面的就有问题了
试过更新后的代码未见这情况,删除“配置.ini”文件重新试试看。
2016-05-27 08:00
举报帖子
使用道具
赠送鲜花
a892502843
等 级:
新手上路
帖 子:17
专家分:4
注 册:2016-5-24
第
13
楼
收藏
得分:0
以下是引用
吹水佬
在2016-5-27 08:00:34的发言:
试过更新后的代码未见这情况,删除“配置.ini”文件重新试试看。
我的代码?那我回寝室再试一试,你用的什么编译器
2016-05-27 08:49
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
14
楼
收藏
得分:0
以下是引用
a892502843
在2016-5-27 08:49:57的发言:
我的代码?那我回寝室再试一试,你用的什么编译器
编译器配置:
TDM-GCC 4.8.1 32-bit Release
2016-05-27 09:06
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
15
楼
收藏
得分:0
再试了下确是有问题,多于2条记录时存取文件异常,再看看。
2016-05-27 09:23
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
16
楼
收藏
得分:0
问题在这里,读和写数据块的大小应该都是sizeof(employee)
//保存到文件中
void save(list *head)
{
//if(fwrite(p,sizeof(list),1,fp)!=1)
if(fwrite(p,sizeof(employee),1,fp)!=1)
}
2016-05-27 09:32
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
17
楼
收藏
得分:0
还有这里:
//读取文件中的数据
void Load(list *head)
{
q=(list *)malloc(sizeof(list));
if(q!=NULL)
{
if(1==fread(q,sizeof(employee),1,fp))
{
p->next=q;
q->next=NULL;
p=p->next;
}
else
{
free(q);
//加多一句,释放掉。
q=NULL;
}
}
}
while(q);
fclose(fp);
}
}
2016-05-27 09:37
举报帖子
使用道具
赠送鲜花
a892502843
等 级:
新手上路
帖 子:17
专家分:4
注 册:2016-5-24
第
18
楼
收藏
得分:0
以下是引用
吹水佬
在2016-5-27 09:32:05的发言:
问题在这里,读和写数据块的大小应该都是sizeof(employee)
//保存到文件中
void save(list *head)
{
//if(fwrite(p,sizeof(list),1,fp)!=1)
if(fwrite(p,sizeof(employee),1,fp)!=1)
}
这次对了谢谢拉两个模块的字节大小不一样怪不得后面出乱码弄好了
2016-05-27 10:11
举报帖子
使用道具
赠送鲜花
18
2/2页
1
2
快速回复:
读取数据出现乱码怎么回事
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.025984 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved