VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 709|回复: 7

这个简单的错误如何解决?

[复制链接]

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-2-18 12:30:01 | 显示全部楼层 |阅读模式
#define        INIFILE        "ckini.ini"

        FILE* fp = NULL;
        char SystemPath[MAX_PATH] = {0};
        GetSystemDirectory( SystemPath , MAX_PATH );

        int len = strlen(SystemPath)-1;
        if (  SystemPath[len] != '\\' )
                strcat(SystemPath,"\\");
        strcat(SystemPath,INIFILE);

        fp = fopen ( SystemPath , "r" );
        if ( fp == NULL )
        {
                return FALSE;
        }

        fread(&Ini[0],sizeof(Ini),1,fp);
        fclose(fp);

        m_Edit1.SetWindowText(fp);

error C2664: 'SetWindowTextA' : cannot convert parameter 1 from 'struct _iobuf *' to 'const char *'
回复

使用道具 举报

0

主题

59

帖子

43.00

积分

新手上路

Rank: 1

积分
43.00
发表于 2020-4-23 02:45:02 | 显示全部楼层
晕~~
m_Edit1.SetWindowText(fp); // fp是文件指针

改为:

m_Edit1.SetWindowText(SystemPath );
回复

使用道具 举报

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-4-28 11:00:02 | 显示全部楼层
谁能给加上注解

这是什么意识
fread(&Ini[0],sizeof(Ini),1,fp);
fclose(fp);
回复

使用道具 举报

0

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-4-28 15:00:01 | 显示全部楼层
fread(&Ini[0],sizeof(Ini),1,fp); //读取文件,存放到Ini数组里,大小是sizeof(Ini)
fclose(fp);  //关闭文件
回复

使用道具 举报

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-5-1 15:15:01 | 显示全部楼层
楼上的大哥能不能把读取的文件放到EDIT控件内?
回复

使用道具 举报

0

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-6-5 16:30:02 | 显示全部楼层
FILE *file = fopen("c:\\work\\test.txt","r"); //c:\\work\\test.txt是要读取的文件名.
        char read_Txt[40] = {0} ;
        int  number =0;
        number = fread(read_Txt,sizeof(char),sizeof(read_Txt),file);
        fclose(file);
        m_Value = read_Txt;
        UpdateData(FALSE);     //将m_Value的值传递给Edit控件.m_Value是与控件绑定的变量.
回复

使用道具 举报

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-6-27 15:30:01 | 显示全部楼层
IniInfor        Ini[2] = {0};
BOOL CReadIniDlg::ReadIniFile()
{
        UpdateData();

        FILE* fp = NULL;
        char SystemPath[MAX_PATH] = {0};
        GetSystemDirectory( SystemPath , MAX_PATH );

        int len = strlen(SystemPath)-1;
        if (  SystemPath[len] != '\\' )
                strcat(SystemPath,"\\");
        strcat(SystemPath,INIFILE);

        fp = fopen ( SystemPath , "r" );
        if ( fp == NULL )
        {
                return FALSE;
        }

        fread(&Ini[0],sizeof(Ini),1,fp);//读取文件,存放到Ini数组里,大小是sizeof(Ini)
        fclose(fp);//关闭文件

        m_Edit2.SetWindowText((char*)&Ini[1]);
        m_Edit2.SetWindowText((char*)&fp); //为什么这里读出的是乱码呢?

        UpdateData(false);
        return        TRUE;
}
回复

使用道具 举报

0

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-7-24 13:30:02 | 显示全部楼层
为何只有2个元素IniInforIni[2] = {0};
m_Edit2.SetWindowText((char*)&fp); 这句又是做什么?
fread(数组,元素长度,读取元素的个数,fp),你把方法用错了.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表