问题标签 [qtextstream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 将 QTextStream 转换为 std::stringstream
我在 .qrc 文件中嵌入了一些文本文件。但是,我的后端项目不是基于 Qt 的,并且在 Qt 前端项目中有几次,我必须调用A::read(std::string const& filePath)
类似函数std::ifstream
来读取文件。当然,没有办法std::ifstream
找到存储在 Qt 资源系统中的文件,所以我开始考虑转换。
使用std::stringstream
是我脑海中闪现的第一件事:
但我希望有更好的东西。(我不需要保留 unicode。)我会接受更接近问题根源的解决方案 - qrc。
c++ - QTextStream 弄乱了它的位置指针
我正在为文本文件编写解析器,但 QTextStream 似乎缺少一些东西。我正在使用 Qt 5.4.1,并且代码是单线程的,如果这很重要的话。
这是方法:
我在循环中调用它。第一个调用工作正常,但在第二个调用中,我得到以下输出:
如您所见,QTextStream 和 QFile 内部指针在进入循环之前很好,但在循环内部完全搞砸了。
知道这里发生了什么吗?
qt - 开始从文件中读取时,QTextStream atEnd() 返回 true
我想在 linux 机器上读取和解析 /proc/PID/status 文件的内容,但是 QTextStream.atEnd 在开始读取时总是返回 true。编码:
文件存在,如果我在没有 while 表达式的情况下手动读取行,则可以正常读取文件。
我错过了什么明显的东西吗?
(Debian 8 x64,QT 5.4.1 x64,gcc 4.9.2)
qt - QtextStream::readAll() 是否刷新我的 QTextStream 对象?
我QtextStream textStream
已经填满了我的对象。当它不以“}”结尾时,我想在这种情况下附加一个“}”:
但在此之后,我的 TextStream 只是 "}" 吗?那么 readAll 会刷新 TextStream 吗?否则我怎么能解决这个问题?
c++ - QTextStream::readAll 返回空的 QString
我试图遍历特定 XML 节点的所有子节点并加入它们的name
属性。结构:
期望的结果:
编码:
现在连调试器都说如果我这样做
这paramNamesSTR
是一个空字符串。但是,如果我改用std
库,则一切正常:
那么有什么区别呢?为什么 QtQTextStream
返回空字符串?我真的更喜欢与使用过的库保持一致,因此使用QTextStream
而不是std::stringstream
,虽然我个人更喜欢前者。
c++ - Qt (C++):QFile 成功创建文本文件但不写入
我有以下代码,我正在尝试写入文件。调用时,在目录中创建文件并for-loop
输入。in 的值QVector<int> program
也存在并且在 中可见qDebug()
。但是,在我关闭文件和窗口后,我在计算机上检查了文件,它完全是空的。我已经检查了 StackOverflow 和 Qt 论坛,但还没有找到解决方案。
c++ - Qt QTextStream 到 QList 项目
我想直接使用 QTextStream 填充 QList。我有这个代码工作正常:
我想知道为什么 while 循环中的注释代码在未注释时无法正常工作(并且 read1>>aux;str.append(aux); 已注释)。我可以使用它,但 str.count() 返回 0 并且 str.isEmpty 为真,即使我可以使用 str.at(i) 读取值。
我有另一种解决方案,如评论中的我不需要使用辅助变量 aux 吗?
c++ - 如何在命令行上使用 Qt 进行是/否对话?
我知道这样做很糟糕:
我想在它出现在 cmdline 的地方执行它:
在哪里:
- y 默认显示
- 如果按n,它不会变成“yn”,而只是将字符改为“n”
如果您按 y 或 n 之外的任何字母,他们将不会注册。
也许作为奖励,如果您按 y,
Yes!
则会显示,如果按 n,No.
则会显示。
谢谢!
qt - 当另一个进程正在附加它们时,如何从文件中读取新行?
因此,我已将ffmpeg
其进度写入文本文件,并且需要从所述文件中读取新值(行)。我应该如何使用 Qt 类来解决这个问题,以尽量减少我必须编写的代码量?
我什至不知道从哪里开始,除了做一些丑陋的事情,比如seek
ing 到最后,存储这个pos
,然后稍后再次寻找到最后,并将新pos
的与前一个进行比较。例如,我不清楚是否QTextStream
可以在这里使用。
qt - QTextStream - 位置方法究竟返回什么
pos()
我对 QTextStream 使用该方法计算的内容有疑问。我认为这是字节数,但似乎情况并非如此。
我问的原因是我正在处理文件中的行,一旦读取的行数达到某个任意数字或stream.atEnd()
为真,我就会跳出循环并保存stream.pos()
到一个qint64*
变量中。处理完成后,我会返回文件并seek(*filePosition)
回到我的最后一个位置并获取更多数据,直到stream.atEnd()
为真。从某种意义上说,这可以跟踪我的位置,但是stream.pos()
正如 Qt 文档中所述,它的调用速度非常慢。
我正在尝试的是在以有效方式读取每一行后更新文件位置。但是,它不起作用,并且当程序返回以再次读取文件时,位置不正确,因为它读取的第一行从上次迭代中先前读取的行的中间开始。
这是到目前为止的内容: