问题标签 [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++ - 我无法使用 QFileDialog、C++ QT 保存 .txt 文件
这是我的代码:
但单击按钮后它不会创建任何 .txt 文件:
日志:
谢谢你的帮助 :)
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。
qt - 在 qtextStream 中查找行
我使用 QTextStreamer 读取 QFile 使用
但在我的要求中,我只需要从我的文件中读取特定的行集。例如:如果文件包含 1034 行。用户只能从第 107 行到第 300 行中选择要读取并显示在文本框中。
如何调整 qtextStream 阅读器的位置以指向文件的特定行。
现在我实施为
c++ - QString 与 QTextStream 的所有权
我正在尝试使用QTextStream
从QString
. 由于构造函数具有以下签名:
(见文档)
由于构造函数传递了一个原始指针,我想知道是否QTextStream
拥有所有权,QString
或者我是否必须在我的代码中管理它以确保在QString
对象之后删除QTextStream
对象。
我在文档和搜索引擎(例如 google、duckduckgo)中都没有找到任何相关信息。我发现的所有示例都显示 aQString
和 aQTextStream
具有相同的生命周期(同一函数中的局部变量),所以我不确定如果这两个对象具有不同的生命周期会发生什么。
c++ - QFile忽略最后一个换行符
我正在使用 Qt 读取文件
这种方法的问题是:我无法在文件末尾读取额外的换行符。
假设我有以下文本文件
我无法为最后\r\n
一行获取空字符串。我该如何解决这个问题?
c++ - Qt,QTextStream - 将字符/字符串输入到 int
考虑以下程序:
像这样,如果我错误地将字符串或字符输入到变量num
中,它的值默认为 0。
如何更改 的行为QTextStream
,以便它为不正确的输入存储不同的值?例如,-1?
c++ - 使 ncurses 与 Qt qtextstream 一起工作
我目前正在尝试使 Qt 控制台程序与 ncurses 一起工作。我想享受 ncurses 的优势,同时仍然能够使用 QTextStream 进行输入和输出。
这个想法是while((c = getch()).....
用于一种特定类型的输入,同时QTextStream(stdin)
用于其他类型的输入。
问题是,如果我按以下方式进行:
但是,如果我这样做:
我的问题是是否可以在没有重复调用的情况下实现相同的结果,initscr();
并且endwin();
每次我想接收特定类型的输入(这是程序中相对经常使用的圆顶)。如果没有,这有什么陷阱吗?我知道这绝对不是一个体面的编程实践,但它会产生除此之外的后果吗?至少,对性能的影响并不明显。
python - PyQt5:无法使用 QFile 将 cookie 写入文件
我有一个名为cookies.txt的文件。
这是我的完整追溯:
我正在关注 C++ 文档,但在编写相应的 python 语法时遇到了麻烦。
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选项,我认为这应该没问题。
c++ - 写入 QTextStream
此代码完成后,我的 QTextStream 为空:
在这里,QString temp 是空的。我错过了什么?
感谢海德的回答。