Qt中使用QXmlStreamReader解析读取xml文件,.readNext返回值为1,错误类型为Premature end of document

慎思 2019-06-04 04:32:14
我的xml文件是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<!--paramter setting:-->
<paramters>
<classify>
<R_Param>0</R_Param>
<Atomic_Param>0</Atomic_Param>
<Smooth_Param>0</Smooth_Param>
</classify>
<gray_compos>
<Gray_map_Param>0</Gray_map_Param>
</gray_compos>
</paramters>



读取程序如下:
void ThXsImgProcQt::read_param_xml(QString file_path)
{
QFile xml_file(file_path);
QXmlStreamReader xml_reader;
if (!xml_file.open(QFile::ReadOnly|QFile::Text))
{
return;
}
while ((!xml_reader.atEnd())&&(!xml_reader.hasError()))
{
qint64 line_count = xml_reader.lineNumber();
QXmlStreamReader::TokenType type = xml_reader.readNext();
if (type == 1)
{
QString error_string = xml_reader.errorString();

}

if (type == QXmlStreamReader::StartDocument)
{

}
if (xml_reader.isStartElement()&&xml_reader.name()== this->m_p_wg_tools->m_wg_classify.ui.label_r_param->text())
{
QString string = this->m_p_wg_tools->m_wg_classify.ui.lineEdit_r_param->text();
}



}
if (xml_reader.hasError())
{
//做错误处理
}


}

有哪位指点下哪里出问题了呢
...全文
2036 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
慎思 2019-06-10
  • 打赏
  • 举报
回复
引用 2 楼 hzh_Beyond 的回复:
QXmlStreamReader xml_reader(&file_path);是不是少了初始化这一步。
是的。。。
浮一大白开水 2019-06-05
  • 打赏
  • 举报
回复
QXmlStreamReader xml_reader(&file_path);是不是少了初始化这一步。
慎思 2019-06-05
  • 打赏
  • 举报
回复
帮我自己顶一下

24,857

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧