问有关读取文件和变量值传递的问题!
1. 请问在VC中如何读取文本文件,比如:在组合框中选定一个选项后,在文本文件相应的一 组数据分别出现在对话框的几个不同的编辑框中?
2. 一个对话框中,当按下一个按纽时,再出现一个对话框,在子对话框的编辑框中输入数据
,是否要建立全局变量,使输入值传递到父对话框中并参与计算?
1、首先要确定文本文件中的数据是怎么排列的(比如,代表数据的字符串之间是用什么间隔的,空格?制表符?逗号?),现成的文件读取方法如fread或CFile::ReadString只能读取一行文本,要读取其中的具体内容,就要一个字符一个字符来读,如,在循环中每次用fgetc读取一个字符放入一个字符串数组中,当读到间隔字符时,结束循环并将字符串数组已有字符的下一个元素中添入'\0’,则该数组就是在文件当前位置读取的一个子字符串,用atof或atoi等函数将其转换为所需数据即可。
2、不需要全局变量,用DDX在子对话框中声明与编辑框相连的成员数据,当输入完数据关闭子对话框时,直接将该成员数据赋给父对话框中的成员变量即可,如在父对话框中的程序中:
if ( m_wndChildDlg.DoModal () == IDOK )
m_nAAA = m_wndChildDlg.m_nAAA;