问题标签 [fstream]

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 投票
3 回答
482 浏览

c++ - 函数调用中无法识别的类型

我正在尝试用 C++ 打印到文件中,由于某种原因,我不断收到这个奇怪的错误:

错误 C2061:语法错误:标识符“ofstream”

我包括以下内容:

这是我的功能:

我是using namespace std


我想通了,这完全是因为我没有以正确的方式包含文件。

0 投票
3 回答
3482 浏览

pointers - 在 C 中打印 char 指针 - 我的格式一直很糟糕

我正在从包含人名的文件中读取一行,第一行包含男性姓名,第二行包含女性姓名。然后我想将这些名字存储在两个数组中,一个用于男性,一个用于女性,但是当我打印它们时,我得到了奇怪的东西。我不确定我是否没有正确阅读它们,或者打印不正确

这些行被读取

但是,当我像这样打印它们时:

我得到了如此不同的东西:

注意:如果我在阅读女性姓名之前在阅读男性姓名后立即打印男性姓名,那么它们会正确打印

0 投票
5 回答
966 浏览

c++ - 非常基本的 C++ 错误

嘿伙计们,我正在写最简单的东西,只是创建一个 ifstream 来读取文本文件,但我遇到了一个奇怪的错误。这是代码(注意:iostream 和 fstream 缺少的 '<' 在我的代码中写得很好,但我不能在这里写)

在 ifstream 之后出现以下错误;行:“错误:'='令牌之前的预期不合格ID”

知道出了什么问题吗?

谢谢

0 投票
2 回答
3708 浏览

c++ - 存储 NUL 字符(ASCII 0)

我用 C++ 创建了一个程序,提示用户输入文件名和请求的文件大小。程序检查请求的文件大小是否大于实际文件大小,然后在文件末尾添加空字符(带有 code 的字符0),直到达到请求的文件大小。
我已经这样做了(使用 fstream):

它就像我想要的那样工作。我知道这是一个糟糕的代码,因为它可能会通过向它发送许多调用来折磨硬盘(顺便说一下它很慢)。这只是出于测试原因。然后,由于这个问题,我决定创建一个存储 NUL 字符的变量并将整个变量一次保存到文件中(而不单独保存每个字符)。
然后问题出现了......因为 NUL 字符(也称为空终止符)终止了字符串,我无法以任何方式存储这些零。
我尝试了一个字符数组、一个字符串甚至一个字符串流,但都没有奏效(关于字符串流有一些有趣的地方,当我使用它时,文件的内容看起来像这样:)0x47c274。无论如何,它并没有像我预期的那样工作。
有没有存储空字符数组的有效方法?

0 投票
1 回答
2110 浏览

c++ - C ++检测文本文件中的空间

如何使用 fstream 库在文件的一行中检测空格或另一个特定字符/符号?

例如,文本文件如下所示:

我需要第一个词进入一个变量,第二个词进入另一个单独的变量。这应该发生在文本文件中的每一行。

有什么建议么?

0 投票
3 回答
14637 浏览

c++ - fstream 到 const char *

我想要做的是读取一个名为“test.txt”的文件,然后将文件的内容设为 const char * 类型。如何做到这一点?

0 投票
2 回答
6154 浏览

c++ - c++ fstream并发访问

如果从不同的进程/线程同时访问文件会发生什么?我知道没有锁定文件的标准方法,只有操作系统特定的功能。

在我的情况下,文件会经常阅读而很少写入。现在如果A打开一个文件进行读取(ifstream)并开始读取块。并B打开同一个文件进行写入(ofstream)并开始写入。会发生什么?有明确的行为吗?

编辑 我的目标是对许多文件进行并发读写访问。但是写访问不会经常发生。如果 fstreams 保证文件内容不会混淆,我会很满意。

例如:进程 1 和 2 写入文件 A。如果它们同时写入,我不关心 1 或 2 的版本是否写入磁盘,只要它是文件的一致版本即可。

如果一个进程读取一个文件,另一个同时写入文件,我希望读取进程获取文件的“旧”版本。

如果 fstreams 不能处理这个问题,我将使用数据库。

0 投票
5 回答
45896 浏览

c++ - 将数据从 fstream 复制到没有缓冲区的 stringstream?

无论如何我可以将数据从fstream(文件)传输到stringstream(内存中的流)吗?

目前,我正在使用缓冲区,但这需要双倍内存,因为您需要将数据复制到缓冲区,然后将缓冲区复制到字符串流,直到您删除缓冲区,数据才会在内存中重复。

有谁知道如何在不使用中间缓冲区的情况下将整个文件写入字符串流?

0 投票
4 回答
5048 浏览

c++ - C ++:从具有空字符的文件中读取

不幸的是,我必须从文件中读取数据以进行分配,而不是使用空格分隔各个字段,而存在空字符。当从文件中提取整数时,它们被提取得很好,但是使用字符串我只是从我的未初始化字符数组中得到一个空格和垃圾。关于如何将字符提取到我的字符数组中而忽略空字符的任何想法。

编辑:

不幸的是,我现在正在使用的代码是 fName 并没有再次获取除 null 之外的任何内容,而 lName 正在获取 fName 的字符串值。正在考虑将数字作为字符串并将其转换。

0 投票
5 回答
2387 浏览

c++ - 如果无法打开文件,则显示错误消息,C++

我正在使用fstream用 C++ 打开 .txt 文件。到目前为止,它工作得很好。但是,如果无法打开input_file,我希望控制台显示错误消息。我该怎么办?

片段: