Parsing QTextStream
Parsing QTextStream
本文关键字:QTextStream Parsing 更新时间:2023-10-16
我的问题很简单,但我无法解决这个问题......
在我的标题中:
QTextStream *in = NULL;
在一种方法中,QTextStream被初始化:
in = new QTextStream(&file);
然后我正在尝试用另一种方法解析它:
QString next;
if(in != NULL){
while(!in->atEnd()){
next = in->readLine();
}
}
else{
QMessageBox::critical(this, "Error", "No file to test!");
}
虽然初始化工作正常,但如果 in 是atEnd(),应用程序会在测试中崩溃。我做错了什么?我需要从几种方法访问。我必须在这里使用指针(?),因为稍后会初始化(AFAIK 无法通过引用)
这可能很明显,但我对 c++ 相当陌生......
谢谢!
我看到您使用&file
初始化文本流.看起来file
是一个局部变量,初始化函数完成后它会被销毁。QTextStream 期望传递的 IO 设备在流被销毁之前有效。所以你得到了段错误。您需要确保在使用文本流时不会破坏file
。
相关文章:
- QTextStream,用于打印英语和Unicode 16
- 由于QTextStream的无限循环
- QTextStream的操作数到二进制的转换无效
- qfile qtextStream仅读取文件的一部分
- QTextStream 无法使用开放模式写入文件,包括"t" QIODevice::Append
- 通过qtextstream反复写入并从qbuffer读取
- 在关闭 QFile 之前是否需要刷新 QTextStream?
- cJSON - parsing JSON
- Parsing result from getline
- 在不使用专用计数器的情况下检查QTextStream读取的总行数
- QTEXTStream提供空字符串
- OpenCV YAML parsing bool
- QString 与 QTextStream 的所有权
- Eclipse (Juno) CDT 索引器:"Error while parsing..." Makefile 项目
- 检查 QTextStream::运算符>>是否失败
- Boost.Regex parsing
- qtextstream弄乱了其位置指针
- Parsing int in C++11 - stoi
- Qt 使用迭代器重载了 qtextstream 输出运算符
- Parsing QTextStream