为什么用fscanf函数把文本中的数据读入时,第一行总是乱码~~~求解啊。。。
typedefstructGoods{intnum;//商品号charname[20];//商品名称intprice;//商品单价intcount;//商品数量longi...
typedef struct Goods
{
int num;//商品号
char name[20];//商品名称
int price;//商品单价
int count;//商品数量
long int total;//商品总价
struct Goods *next;
}goods;//这是结构体
这是读出第一行的乱码 展开
{
int num;//商品号
char name[20];//商品名称
int price;//商品单价
int count;//商品数量
long int total;//商品总价
struct Goods *next;
}goods;//这是结构体
这是读出第一行的乱码 展开
6个回答
展开全部
折腾文件和字符串我最拿手了
你把你的文本 内容格式 还有你的代码发上来
十有八九是你解析错误
你把你的文本 内容格式 还有你的代码发上来
十有八九是你解析错误
更多追问追答
追问
void input(goods *head)
{
goods *p;
FILE *fp;
if((fp=fopen("goods.txt","r"))==NULL)
{
printf("打开失败\n");
exit(1);
}
rewind(fp);
while(!feof(fp))
{
p=(goods*)malloc(sizeof(goods));
fscanf(fp,"%d %s %d %d %ld",&p->num,p->name,&p->price,&p->count,&p->total);
p->next=head->next;
head->next=p;
}
fclose(fp);
}这是其中的一个把txt文件内容读出来的程序,读出来第一行就是乱码= =
追答
txt文件内容格式 能贴出来 或者上个图么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
freopen("C:\\test.txt","r",stdin);//用这种方式打开,就可以直接读了,不用fscanf
scanf("%d",&n);
scanf("%d",&n);
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-09-28
展开全部
二进制的,望采纳!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
目测有中文字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
计数从0开始!
追问
rewind(fp);
这个函数不就是将文件位置指针置于文件开头吗??
追答
p初始化的问题吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |