小编Yak*_*sha的帖子

C++ 将 CSV 文件解析为向量向量:丢失字符串第一个字符

我正在将 CSV 文件读入字符串向量向量中。我在下面写了代码。

#include<iostream>
#include<fstream>
#include<string>
#include <vector>
#include <fstream>
#include <cmath>
#include <sstream>

using namespace std;

int main()
{
    ifstream mesh;
    mesh.open("mesh_reference.csv");

    vector<vector<string> > point_coordinates;
    string line, word;

    while (getline(mesh,line))
    {
        stringstream ss(line);
        vector<string> row;
        while (getline(ss, word, ','))
        {
            row.push_back(word);
        }
        point_coordinates.push_back(row);
    }

    for(int i=0; i<point_coordinates.size(); i++) 
    {
        for(int j=0; j<3; j++)
            cout<<point_coordinates[i][j]<<" ";
        cout<<endl;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我打印出向量的向量时,我发现我在向量行的 0 位置丢失了 Element 的第一个字符。基本上,point_coordinates[0][0]显示的是 0.0001,而字符串应该是 -0.0001。我无法理解其原因。请帮忙。

典型的输出线是

 .0131 -0.019430324 0.051801
Run Code Online (Sandbox Code Playgroud)

而 CSV 数据是

0.0131,-0.019430324,0.051801
Run Code Online (Sandbox Code Playgroud)

文件中的 CSV …

c++ csv string file vector

1
推荐指数
1
解决办法
2803
查看次数

标签 统计

c++ ×1

csv ×1

file ×1

string ×1

vector ×1