如何读取特定文件fstream
How to read specific file fstream?
我有一个data.txt
文件,它的内容是:
[exe1]
1 0 2 9 3 8
----------
[exe2]
----------
10 2 9 3 8:0
我想读第2行:1 0 2 9 3 8
。但我的输出只有1
。
我的代码:
#include <iostream>
#include <fstream>
#include <limits>
#include<string>
std::fstream& GotoLine(std::fstream& file, unsigned int num) {
file.seekg(std::ios::beg);
for (int i = 0; i < num - 1; ++i) {
file.ignore(std::numeric_limits<std::streamsize>::max(), 'n');
}
return file;
}
int main() {
using namespace std;
fstream file("data.txt");
GotoLine(file, 2);
std::string line2;
file >> line2;
std::cout << line2;
cin.get();
return 0;
}
我的问题是什么?对不起,我是编程新手。
file >> line2;
将停止读取第一个空白,因此只读取"1",因为提取operator >>
使用空间作为分母。
您可能希望使用getline
作为getline(file,line2)
输入运算符>>
读取空格分隔的字符串,如果要读取整行,则需要使用std::getline
:
std::string line2;
std::getline(file, line);
相关文章:
- 使用fstream对txt文件中的数字进行循环
- 为什么 fstream 在打开带有格式的文件时会导致分段错误?
- 无法打开 fstream C++文件,即使它与 .cpp 位于同一位置
- 使 std::fstream 写入文件末尾,但从头开始读取
- 如何修复函数中的 fstream 文件输入以将正确的信息存储在结构数组中?
- 如何检查文件是否已存在于 fstream C++中
- 使用 fstream 库并在屏幕上打印的文件有问题?
- Windows std::fstream 修改文件后打开()?
- 如何删除文件中的数字,通过 c++ fstream 的
- 如何使用单个fstream创建、读取和写入文件
- 如何使用fstream从.txt文件C++中取出int值
- fstream库,试图创建一个变量名为(c++)的文件
- 变量 std::fstream 文件具有初始值设定项,但类型不完整 编译错误
- 如何在 c++ 中使用 fstream 读取.txt文件
- 为什么错误"permission denied","id returned 1 exit status"仅在 IM 使用 C++ 中的头文件 fstream 时才出现
- 创建.dat文件 (fstream) c++
- 如何读取特定文件fstream
- 在驱动器c:中按类打开文件fstream类
- 使用库更新文件<fstream>(仅覆盖特定部分)
- 读取和写入同一个文件fstream