为什么在写入文件时删除空格无法读取文件
why does removing blank space while writing into file fails reading files?
我正在学习C++,如果我在写入文件时没有添加空格,我会发现读取文件时出现问题。
另外,我写入的文件不包含预期的空格。(我用记事本++打开了它(
顺便说一句,我正在使用代码::blocks17.12。
#include <iostream>
#include <fstream>
using namespace std;
int main()
{ ofstream out("file1");
int i;
ifstream in;
if(!out){cerr << "create file error!n"; return 1;}
for(i = 1; i<=10; ++i) out << i <<' ';
/*if I remove (<<' ') here, nothing was pirnted on screen. */
out.close();
in.open("file1");
if(!in){cerr << "open file error!n"; return 1;}
while(in >> i) cout<< i << ' ';
in.close();
return 0;
}
如果你写1
,3
和8
到一个没有空格的文件,那么你现在138
你想如何弄清楚它不是138
写的?
输入流需要某种指示数字是如何分开的。
如果您想知道为什么他们决定写数字不会自动添加空格,那是因为它并不总是所需的行为。
正如马丁·赫拉莱茨基正确提到的那样。 in >> i
不会读取任何内容,因为没有空格12345678910
会写入文件,这肯定超出了int
仅您的设置的范围。
int
的实际大小取决于平台,但您不应期望它可以存储大于 2147483647
的数字。
有关基本类型:属性的更多详细信息
相关文章:
- 如何在 C++ 中从文件中读取字符数组(带有一些空格)
- 如何逐行读取文件,每行中的内容都用空格分隔并将其写入新文件中
- 从输入文件修剪空格
- 名称具有空格的文件未编译
- 文件读取C++包括空格键
- 忽略从文件中读取前导空格
- 从文本文件中读取所有内容,直至空格
- 使用空格分隔符从文本文件将对象读入数组
- 用空格填充 2D 数组(从文件输入)
- 如何在Boost::program_options配置文件中为非字符串的自定义选项值类型处理空格
- 如何在.pro文件中为TARGET使用空格和尖括号
- 如何从文件中读取用空格分隔的数字
- C++ 逐行从文件(包含空格)读取数据
- 如何在 c++ 中将文件中的无空格插入器读取到数组中?
- 从文本文件中读取数据并删除所有换行符空格,并在 C++ 控制台中显示
- 从文件中读取多行.txt字符串删除空格并创建新文件进行输出
- 如何读取文件忽略第一个空格?
- C++ : 如何在使用 getline() 和 ifstream 对象从文件中读取一行时跳过第一个空格?
- 无法显示带有保存在文件中的空格的名称
- 使用 fstream 在空格分隔文件中查看下一项(不仅仅是一个字符)的方法