- wxString path_cfg(_("./config/record.conf")); //录音配置文件路径
- if(!wxFileExists(path_cfg))
- {
- wxMessageBox(_T("Can not find record.conf file"),_T("ERROR"));
- return ;
- }
- wxTextFile wxfile(path_cfg);
- wxfile.Open();
- wxString sum_row_str = _(""); //存放配置文件中的每行
- for (sum_row_str=wxfile.GetFirstLine(); !wxfile.Eof(); sum_row_str=wxfile.GetNextLine())
- {
- if(sum_row_str == _("[record]"))
- {
- while(!wxfile.Eof())
- {
- sum_row_str = wxfile.GetNextLine();
- wxString left_row_str = _(""); //每行等号左边内容
- wxString right_row_str = _(""); //每行等号右边内容
- for(int i = 0; i < sum_row_str.size(); i++)
- {
- if('[' == sum_row_str.at(i))
- {
- return ;
- }
- if(sum_row_str.at(i) == '=')
- {
- left_row_str = sum_row_str.SubString(0,i-1);
- right_row_str = sum_row_str.SubString(i+1,sum_row_str.size());
- }
- }
- wxString var_str; //变量字符串
- for(int j = 0; j < left_row_str.size(); j++)
- {
- if(' ' != left_row_str.at(j))
- {
- var_str = left_row_str.SubString(0,j); //把左边的变量切出来
- }
- }
- wxString val_str; //变量对应的值
- for(int k = 0; k < right_row_str.size(); k++)
- {
- if(' ' == right_row_str.at(k))
- {
- val_str = right_row_str.substr(k+1); //把右边的变量切出来
- }
- }
- if(var_str != "")
- {
- conf_map.insert(std::make_pair(var_str,val_str));//存放配置文件内容
- }
- }
- }
- if(wxfile.Eof())
- {
- return ;
- }
- }
- wxfile.Close();
wxWidgets读配置文件代码
最新推荐文章于 2024-03-23 13:48:40 发布