当前位置: 代码迷 >> QT开发 >> QT打开封锁file出错
  详细解决方案

QT打开封锁file出错

热度:70   发布时间:2016-04-25 04:15:54.0
QT打开关闭file出错
请问如下代码,一执行到file.close()就出错,显示Windows 已在 **.exe 中触发一个断点。
其原因可能是堆被损坏。我是单步执行的,file明显已经打开成功,为什么还会有这种问题呢?求指教
QString xmlPath="E:\\abc.xml";
QFile file("E:\\abc.xml");
if (!file.open(QIODevice::ReadOnly| QIODevice::Text))
{
return 0;
}
QDomDocument doc;
QString errorStr;
int errorLine, errorCol;
if (!doc.setContent(&file, false, &errorStr, &errorLine, &errorCol))
{
file.close();
return 0;
}
file.close(); //这里总是会出错
------解决方案--------------------
Qt的QFile在超出作用域之后会自动关闭,不用写close。
将close的代码删除了试试。
  相关解决方案