• 7087阅读
  • 18回复

我错故我在,QDataStream. 程序中有游离的‘\357’【结贴】 [复制链接]

上一主题 下一主题
离线benbenmajia
 

只看楼主 正序阅读 楼主  发表于: 2010-01-12
QFile file("/fuck.file");
    file.open(QIODevice::WriteOnly|QIODevice::Truncate);
    QDataStream out(&file);
    out<<QString("kangjunfei");;
    out<<QDate::fromString("1986/10/15","yyyy/mm/dd");
    out<<(qint32)23;
    file.close();

QFile file1("/fuck.file");a
    file1.open(QIODevice::ReadOnly);
    
    QDataStream in(&file1);
    QString name;
    QDate  birthday;
    qint32 age;
    in>>name>>birthday>>age;
    qDebug()<<name;
    qDebug()<<birthday;
    qDebug()<<(qint32)age;
    file1.close();

报错::src/main.cpp:26: 错误: 程序中有游离的‘\357’
src/main.cpp:26: 错误: 程序中有游离的‘\274’
src/main.cpp:26: 错误: 程序中有游离的‘\206’

查了下,据说是因为UTF8下面文件头中游无法识别的字符,哪位大侠给俺说说具体的



dbzhang同学犀利的让我五体投地啊....因为半角和全角转换错了,谢谢dbzhang同学,哈哈
[ 此帖被benbenmajia在2010-01-12 14:06重新编辑 ]
安然.....
离线benbenmajia

只看该作者 18楼 发表于: 2010-01-13
我用的QDevelop,是个不怎么成熟的IDE,哎,没办法,记事本编程
安然.....
离线yangfanxing
只看该作者 17楼 发表于: 2010-01-12
faint。。。
我还煞有介事地改过来~~~

你的编译器就不报错吗???呵呵。。。
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 16楼 发表于: 2010-01-12
嘿嘿,果然NB,哈哈,确实是半角和拳脚不对,shit
安然.....
离线hxcan

只看该作者 15楼 发表于: 2010-01-12
引用第9楼dbzhang800于2010-01-12 11:49发表的  :
1. 不妨说一下 src/main.cpp:26 是哪一行
2. 删除那一行,重新敲一遍看看


支持。
本座已达到法定娶亲年龄,欲购从速,价格面谈。
杀人容易爱人难。
作为一个太极美术工程师,我深刻地感受到:世风日下、人心不古。
http://StupidBeauty.com/Blog
离线dbzhang800

只看该作者 14楼 发表于: 2010-01-12
引用第10楼benbenmajia于2010-01-12 11:52发表的  :
QDataStream in(&file1)
这个是26行


如果你按我前面说的做的话,问题应该解决了。

你顶楼用的 全角 的 &,而这儿贴的是半角的 &
离线yangfanxing
只看该作者 13楼 发表于: 2010-01-12
out<<QDate::fromString("1986/10/15","yyyy/MM/dd");
我测试的没问题。
你就指着这一行折腾下吧~~~

试试("19861015","yyyyMMdd");什么的;
另外debug()输出跟(决定于)本机的日期格式设置有关系~~~
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 12楼 发表于: 2010-01-12
我改过了,貌似不行哎,囧
安然.....
离线yangfanxing
只看该作者 11楼 发表于: 2010-01-12
,"yyyy/mm/dd");
这里的mm写错啦~~~
是MM~~~
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 10楼 发表于: 2010-01-12
QDataStream in(&file1)
这个是26行
安然.....
离线dbzhang800

只看该作者 9楼 发表于: 2010-01-12
1. 不妨说一下 src/main.cpp:26 是哪一行

2. 删除那一行,重新敲一遍看看
离线benbenmajia

只看该作者 8楼 发表于: 2010-01-12
咱们俩坐等高人.....呵......呵
安然.....
离线yangfanxing
只看该作者 7楼 发表于: 2010-01-12
我好想说错了~呵呵。。。不好意思。。。

是因为你这个MM写成mm了~~~这次肯定对了吧???
[ 此帖被yangfanxing在2010-01-12 11:43重新编辑 ]
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 6楼 发表于: 2010-01-12
依然......瀑布汗
安然.....
离线benbenmajia

只看该作者 5楼 发表于: 2010-01-12
试试先,嘿嘿
安然.....
离线yangfanxing
只看该作者 4楼 发表于: 2010-01-12
说了啊~
/

//
是吧~~~反正这个斜杠你写两次
否则,你把日期这一行换成普通的字符串就OK了~
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 3楼 发表于: 2010-01-12
继续继续,什么问题,我查了下说UBUNTU下的UTF8的文件文件头有不可识别的字符,怎么说
安然.....
离线yangfanxing
只看该作者 2楼 发表于: 2010-01-12
out<<QDate::fromString("1986/10/15","yyyy/mm/dd");


这里的/有问题吧~~~//
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 1楼 发表于: 2010-01-12
新手啊,大家帮忙啊,不要抛弃我
安然.....
快速回复
限100 字节
 
上一个 下一个