标题:文件打开后 读入的是乱码 求大神支招!!!
只看楼主
风车转风车89
Rank: 2
等 级:论坛游民
帖 子:125
专家分:45
注 册:2014-9-15
结帖率:81.82%
已结贴  问题点数:10 回复次数:21 
文件打开后 读入的是乱码 求大神支招!!!
程序代码:
#include<stdio.h>
#include<stdlib.h>
void main()
{
    FILE *fp;int i,a[5];char filename[20];
    scanf("%s",filename);
    fp=fopen(filename,"r+");
    //fp=fopen("E:\\1.txt","r+");
    if(fp==NULL)
    {printf("can't found the file\n");exit(0);}
    for(i=0;i<5;i++)
    {
        fread(a+i,sizeof(int),1,fp);
        printf("  a[i]=%d  ",a[i]);
    }
    fclose(fp);
}  
2014-10-10 19:28
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:5 
解码方式不对

授人以渔,不授人以鱼。
2014-10-10 20:21
l3456
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:80
专家分:133
注 册:2014-4-16
得分:0 
同意楼上

走向光明的菜鸟学生,励志成为新一代程序猿
2014-10-11 08:18
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:4 
原始文件用记事本打开是否正常

DO IT YOURSELF !
2014-10-11 08:31
风车转风车89
Rank: 2
等 级:论坛游民
帖 子:125
专家分:45
注 册:2014-9-15
得分:0 
回复 2 楼 TonyDeng
什么意思;对不起我刚接触不是很明白
2014-10-11 09:42
风车转风车89
Rank: 2
等 级:论坛游民
帖 子:125
专家分:45
注 册:2014-9-15
得分:0 
回复 4 楼 wp231957
正常呀,程序可以打开文件但是复制后代开的是  易主没有规律的数值
2014-10-11 09:45
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
你试试这段代码  
程序代码:
#include<stdio.h>

int main()
{
    FILE *fp;
    int i;
    char a[5]={0};
    fp=fopen("d:\\12300.txt","r+");
    if(fp==NULL)
    {
        printf("can't found the file\n");
        return 0;
    }
    for(i=0;i<5;i++)
    {
        fread(a+i,1,1,fp);
        printf("  a[%d]=%c  \n",i,a[i]);
    }
    fclose(fp);
    return 0;
}  



[ 本帖最后由 wp231957 于 2014-10-11 09:56 编辑 ]

DO IT YOURSELF !
2014-10-11 09:55
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
不要在一行内写多行代码  虽然游戏规则允许你这样做

DO IT YOURSELF !
2014-10-11 09:57
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
以下是引用风车转风车89在2014-10-11 09:42:48的发言:

什么意思;对不起我刚接触不是很明白

你那个是文本文件,却用二进制方式fread()解读数据。

授人以渔,不授人以鱼。
2014-10-11 10:13
风车转风车89
Rank: 2
等 级:论坛游民
帖 子:125
专家分:45
注 册:2014-9-15
得分:0 
回复 8 楼 wp231957
这一段可以,对了 这是为什么呢?两段代码没什么区别呀!
2014-10-11 10:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-437084-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.211631 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved