• 7466阅读
  • 5回复

[提问]求救~ QDataStream写进txt是乱码 [复制链接]

上一主题 下一主题
离线grandyang
 
只看楼主 倒序阅读 楼主  发表于: 2012-08-03
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
我的代码如下,见了一个Qlist,放了一个line进去,想把这个line的两个点打印到txt文本中,结果出来是乱码,求救啊~~~~


QList<QLineF*> mylines;
QLineF *line = new QLineF;
line->setP1(QPointF(1.1, 2.2));    
line->setP2(QPointF(3.3, 4.4));  
mylines.append(line);
QFile myfile("lines.txt");    
myfile.open(QIODevice::WriteOnly);    
QDataStream stream( &myfile );    
stream.setVersion( QDataStream::Qt_4_8 );    
stream << mylines.at(0)->p1() << mylines.at(0)->p2() ;    
myfile.close();
离线grandyang
只看该作者 1楼 发表于: 2012-08-03
求高手帮助
离线dbzhang800

只看该作者 2楼 发表于: 2012-08-03
使用QTextStream如果你需要的是Text而不是Data
离线grandyang
只看该作者 3楼 发表于: 2012-08-04
回 2楼(dbzhang800) 的帖子
QTextStream的话下面这句就编译不通过啊。。。

stream << mylines.at(0)->p1() << mylines.at(0)->p2() ;    
离线jdwx

只看该作者 4楼 发表于: 2012-08-04
回 3楼(grandyang) 的帖子
写进文件里的是QPoint,QPoint,读不出来QString。
要写进去的就是QString,才能读出来。
写进去:stream<< QString::number(p1.x) <<......
读出来:
Qstring str;
stream>>str
p1.x = str.toint();
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线呆呆很呆
只看该作者 5楼 发表于: 2012-08-04
如果不是乱码那你的Qt就出问题了,要用QTexeStream的
快速回复
限100 字节
 
上一个 下一个