• 8857阅读
  • 6回复

[提问]"unexpected end of file" [复制链接]

上一主题 下一主题
离线行潇
 

只看楼主 倒序阅读 楼主  发表于: 2014-03-06
你好,我在用dom读取XML文件是出现“"unexpected end of file" ”,代码如下,是什么原因呢?

    if(file.open(QIODevice::ReadWrite|QIODevice::Append))    {        bool flag=true;        QString erroMsg;        if (!doc.setContent(&file, flag, &erroMsg))        {            qDebug()<<erroMsg<<endl;
            file.close();            return ;
}
        }
离线realfan

只看该作者 1楼 发表于: 2014-03-06
检查一下xml文件是不是有问题
离线行潇

只看该作者 2楼 发表于: 2014-03-06
回 realfan 的帖子
realfan:检查一下xml文件是不是有问题 (2014-03-06 12:09) 

<?xml version="1.0" encoding="ANSI"?>
<note>
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
</note>
这是我的XML文件,麻烦帮我看看!
离线realfan

只看该作者 3楼 发表于: 2014-03-07
if(file.open(QIODevice::ReadWrite|QIODevice::Append))  中的|QIODevice::Append去掉,改为
if(file.open(QIODevice::ReadWrite))
离线行潇

只看该作者 4楼 发表于: 2014-03-07
回 realfan 的帖子
realfan:检查一下xml文件是不是有问题 (2014-03-06 12:09) 

去掉还是还是显示“ "unexpected end of file" 1 1 ”!
离线uidab

只看该作者 5楼 发表于: 2014-03-07
XML文件编码方式 是啥?
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线realfan

只看该作者 6楼 发表于: 2014-03-07
我试了一下,写成这样是可以的
    QFile file("c:/test.xml");
    QDomDocument doc;
    if(file.open(QIODevice::ReadWrite))
    {
        bool flag=true;
        QString erroMsg;
        if (!doc.setContent(&file, flag, &erroMsg))
        {
            qDebug()<<erroMsg<<endl;
            file.close();
            return ;
        }
    }

你的xml文件是UTF8的还是ANSI的,你再检查一下。encoding="ANSI",检查一下文件存储是不是按ANSI格式保存的。 test.zip (1 K) 下载次数:2 试试这个
快速回复
限100 字节
 
上一个 下一个