在c++中使用ifstream时,可以从文件的第二行或其他行开始吗?
Can you begin at the second, or other line, of a file when using ifstream in C++?
我有一个。txt文件,看起来像这样:
529.23
老爷车蓝3402.99
《锈桶布朗》44.99
柠檬黄4226.99
这里列出的第一个数字529.23将被放入一个单独的变量中。这将是我项目的总"余额"。接下来的项目是汽车的名称,颜色和价格要放入单独的变量后。我想知道的是,我能否读取第一行并将其赋值给变量(显然是字符串,然后将其更改为整数)?然后,我可以跳过第一行(529.23),从"Jalopy"开始阅读,并从那里将这些项分配给不同的变量吗?对此任何帮助都将不胜感激。谢谢。
这是我在stackoverflow上问的第一个问题。所以让我知道我如何才能提高我的"问问题"。谢谢。)跳过一行只需使用std::getline
而不使用结果:
std::ifstream is("file.txt");
std::string line;
std::getline(is, line); // skipping line 1
std::getline(is, line); // skipping line 2
别忘了检查错误。例如,考虑一下当文件为空,不存在,只有一行等时会发生什么……
您可以对第一行使用提取器:
double d;
if (file >> d)
{
std::cout << d; // 529.23
}
对于其他行,您也可以使用提取器。下面的示例将第二行数据放入变量中:
std::string name, color;
double price;
if (file >> name >> color >> price)
{
// ...
}
相关文章:
- C++ 中的二维整数数组,每行中的元素数量不均匀
- 绘制二维矩阵的行和列
- 如何显示函数开始、结束行和函数体?
- 每像素字节数,每行字节数-如何在tess二的tessbaseapi.cpp中使用函数nativeSetImageByte
- 为什么我的代码在终端中没有输出任何内容.开始新行没有错误
- f流删除特定的开始到结束行
- C++ 如何从文本文件中扫描二维数组并对行求和?
- 如何将 50 行和 50 列的二维数组编码为一个为元素随机分配星号的函数?
- 在 C++ 的二维数组中添加行和列
- 正则表达式,捕获 4 个被 括起来的数字.或行开始/结束
- 删除二维矢量中的行
- g++ 如何对齐内存以确保对齐从缓存行的开头开始?
- 从特定行开始将文件读取到对向量中
- 从.txt文件MFC C++的特定行开始读取
- C++ 使用 while 循环读取文件,从第 "x" 行开始
- 从包含特定字符串的行开始读取
- 从每行开始收集前三个字符
- Ifstream如何使用c++从特定行开始读行
- 如何从文本文件中的某些行开始读取
- 在c++中使用ifstream时,可以从文件的第二行或其他行开始吗?