问题标签 [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.

0 投票
1 回答
1787 浏览

c++ - 我无法使用 QFileDialog、C++ QT 保存 .txt 文件

这是我的代码:

但单击按钮后它不会创建任何 .txt 文件:

日志:

谢谢你的帮助 :)

0 投票
1 回答
913 浏览

c++ - 为什么我在打开的文件上使用 QTextStream 会崩溃 *

我在 Windows 上,qt 4.7。我的部分代码从一个文件中获取一个 FILE*,该文件已打开以供系统的另一部分(旧版,C)读取。我打开一个 QTextStream 如下:

第二行在发布模式下崩溃,但在调试中很好。我可以单步调试版本并查看 QTextStream 在内部打开的 QFile。崩溃时,我在发布模式下设法摆脱的 Windows 调用堆栈最多如下:

这可能是一个红鲱鱼,但看起来在尝试锁定文件时出了点问题。在此之前,我已经为我的代码启用了调试输出,所以我知道是 QTextStream 创建导致了问题。我欢迎任何建议!

经过进一步挖掘,我发现该文件虽然是 ASCII,但最初是用“rb”打开的,以阻止 win32 CRT 将行尾从 \r\n 转换为 \n。我认为这会使 Qt 感到困惑,因此将 fopen 修改为仅使用“r”。然后下面链接到这里的评论表明 FILE* 应该以二进制模式打开,例如“rb”,所以这不是问题。

尝试下面的 tezrigs 建议,对 FILE* 进行 freopen 给出以下结果:

传递给 _call_report_fault 的异常代码是 0x0000417 - 致命错误:未知软件异常,这没什么帮助。

好的:更详细,以及一些自包含的、可复制的代码(myfile.txt 必须超过 1000 个字符长):

发布模式下的所有以下内容:

如果我在 Visual Studio 之外运行,这可以让我附加一个调试器。如果我在外部视觉工作室运行,它会崩溃。如果我从外部视觉工作室启动后附加到它,它会在构建 QTextStream 时崩溃。如果我使用 shift-F5 从 Visual Studio 内部启动它(即在调试器外部运行),它会将文件的内容写入显示器。同样,在调试器下运行时,它按预期工作。

这取决于dll。我有一组本地编译的 dll(使用 MSVC2010 创建)并使用它们替换主要产品中的那些可以解决问题。测试代码同上。发布代码使用 2005 年编译的 Qt,使用 msvcr80。

0 投票
1 回答
2121 浏览

qt - 在 qtextStream 中查找行

我使用 QTextStreamer 读取 QFile 使用

但在我的要求中,我只需要从我的文件中读取特定的行集。例如:如果文件包含 1034 行。用户只能从第 107 行到第 300 行中选择要读取并显示在文本框中。

如何调整 qtextStream 阅读器的位置以指向文件的特定行。

现在我实施为

0 投票
2 回答
585 浏览

c++ - QString 与 QTextStream 的所有权

我正在尝试使用QTextStreamQString. 由于构造函数具有以下签名:

(见文档

由于构造函数传递了一个原始指针,我想知道是否QTextStream拥有所有权,QString或者我是否必须在我的代码中管理它以确保在QString对象之后删除QTextStream对象。

我在文档和搜索引擎(例如 google、duckduckgo)中都没有找到任何相关信息。我发现的所有示例都显示 aQString和 aQTextStream具有相同的生命周期(同一函数中的局部变量),所以我不确定如果这两个对象具有不同的生命周期会发生什么。

0 投票
2 回答
1096 浏览

c++ - QFile忽略最后一个换行符

我正在使用 Qt 读取文件

这种方法的问题是:我无法在文件末尾读取额外的换行符。

假设我有以下文本文件

我无法为最后\r\n一行获取空字符串。我该如何解决这个问题?

0 投票
1 回答
376 浏览

c++ - Qt,QTextStream - 将字符/字符串输入到 int

考虑以下程序:

像这样,如果我错误地将字符串或字符输入到变量num中,它的值默认为 0。

如何更改 的行为QTextStream,以便它为不正确的输入存储不同的值?例如,-1?

0 投票
0 回答
26 浏览

c++ - 使 ncurses 与 Qt qtextstream 一起工作

我目前正在尝试使 Qt 控制台程序与 ncurses 一起工作。我想享受 ncurses 的优势,同时仍然能够使用 QTextStream 进行输入和输出。

这个想法是while((c = getch()).....用于一种特定类型的输入,同时QTextStream(stdin)用于其他类型的输入。

问题是,如果我按以下方式进行:

我得到以下结果:在此处输入图像描述

但是,如果我这样做:

结果看起来更合适: 在此处输入图像描述

我的问题是是否可以在没有重复调用的情况下实现相同的结果,initscr();并且endwin();每次我想接收特定类型的输入(这是程序中相对经常使用的圆顶)。如果没有,这有什么陷阱吗?我知道这绝对不是一个体面的编程实践,但它会产生除此之外的后果吗?至少,对性能的影响并不明显。

0 投票
2 回答
400 浏览

python - PyQt5:无法使用 QFile 将 cookie 写入文件

我有一个名为cookies.txt的文件。

这是我的完整追溯:

我正在关注 C++ 文档,但在编写相应的 python 语法时遇到了麻烦。

0 投票
1 回答
632 浏览

c++ - 使用 QTextStream 从控制台读取时出现访问冲突错误

我有问题,尝试使用 QTextStream 读取或写入控制台的数据时出现访问冲突:

ApplicationStub.exe 中 0x77BD1D76 (ntdll.dll) 的第一次机会异常:0xC0000005:
访问冲突写入位置 0x00000014。

ApplicationStub.exe 中 0x77BD1D76 (ntdll.dll) 处的未处理异常:0xC0000005:
访问冲突写入位置 0x00000014。

我的程序很简单:

可能是什么问题呢?谢谢

编辑 1 我也试过 QCoreApplication 我正在使用 Visual Studio 2013,Windows 7

同样在我的.pro文件中,我有:

我有gui选项,我认为这应该没问题。

0 投票
1 回答
672 浏览

c++ - 写入 QTextStream

此代码完成后,我的 QTextStream 为空:

在这里,QString temp 是空的。我错过了什么?

感谢海德的回答。