在C++中读取CSV文件中的特定行
Reading a specific row in CSV file in C++
我正在编写一个C++代码,该代码将读取CSV文件上的特定行,我成功地读取了整个文件,代码如下:
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
int main() {
ifstream myFile;
myFile.open("test.csv");
while (myFile.good()) {
string line;
getline(myFile, line, ',');
cout << line << endl;
}
}
代码会给我csv文件中的每个值,但我希望文件中只有一个特定行的值。我做了一些研究,但不确定如何真正做到这一点
假设在我的CSV文件中有:
1 2 3 4 5
6 7 8 9 0
我当前的代码会给我
1
2
3
4
5
6
7
8
9
0
结果,但我只想要一个像67890这样的特定行作为结果。
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
int main() {
ifstream myFile;
myFile.open("test.csv");
string line;
int n = 2;//desired row number
int a = 0;//counter
while (getline(myFile, line)) {
a++;
if (a == n) {
cout << line << endl;
break;
}
}
}
多亏了Martin York的评论,我才知道,这样我就可以逐行输出代码了。通过添加条件,代码将只显示CSV文件中的一行数据。
您应该使用seek方法将文件指针查找到正确的行,然后读取该行。这将比你一行一行地读到目标行要好。示例代码:在C++中,有没有一种方法可以转到文本文件中的特定行?
相关文章:
- 正在将csv文件读取为双精度矢量
- 如何选择在 csv 文件中输出的位置
- 有没有办法在不使用 getline() 的情况下从.csv文件中读取?
- 如何从 CSV 获取数据并将其存储在 C++ 中的表对象中
- 无法读取C++中的 CSV 文件
- 流:CSV 文件中的换行符
- 是否可以使用 Python csv 阅读器读取使用 C++ std::setw 生成的文件?
- 使用从文件(stod、strtod、atof)中提取的数据C++从字符串转换为双精度.csv
- 将一维数组写入 CSV C++中的不同列?
- 如何从CSV加载堆栈?C++
- 如何正确格式化csv文件?
- 正在分析CSV文件-C++
- 如何获取组件和搜索 CSV 文件
- C++ 中的 CSV 文件管理(特别是设置标头和每个标头将分别具有的值)
- 无法逐行读取.csv文件
- 以CSV格式编写特征矢量Xd
- 非常快速地阅读 CSV 文件
- 读取和存储 CSV 数据
- 该程序将.csv文件中的一系列单词放入数组中,然后随机生成句子.但它不起作用
- CSV文件之间的差异,使用getline()产生不同的结果