117.info
人生若只如初见

C++中怎么读取CSV文件

在C++中读取CSV文件可以使用文件流操作符<<>>,以及getline()函数。以下是一个简单的示例代码:

#include 
#include 
#include 
#include 
#include 

int main() {
    std::ifstream file("data.csv");
    std::vector> data;

    if (file.is_open()) {
        std::string line;
        while (std::getline(file, line)) {
            std::vector row;
            std::stringstream ss(line);
            std::string cell;

            while (std::getline(ss, cell, ',')) {
                row.push_back(cell);
            }

            data.push_back(row);
        }

        file.close();
        
        // 输出CSV数据
        for (const auto& row : data) {
            for (const auto& cell : row) {
                std::cout << cell << " ";
            }
            std::cout << std::endl;
        }
    } else {
        std::cout << "Failed to open file." << std::endl;
    }

    return 0;
}

在这个示例中,我们首先打开名为"data.csv"的CSV文件,然后使用getline()函数逐行读取文件内容。对于每一行,我们使用stringstream对象解析每个单元格,并将其存储在一个vector中。最后,我们将每行数据存储在一个vector>中,其中每个向量代表一行数据。最后,我们遍历这个二维向量并输出CSV数据。

注意:这里假设CSV文件中的单元格以逗号分隔,如果使用其他分隔符,需要相应地修改上面的代码。

未经允许不得转载 » 本文链接:https://www.117.info/ask/feee6AzsIBg9TDVw.html

推荐文章

  • c++ csdn 能获取最新技术资讯吗

    是的,通过CSDN可以获取C++的最新技术资讯。CSDN专业的中文IT技术社区,提供了丰富的技术资源,包括C++相关的最新技术资讯、公开课、精品课、电子书等。以下是一...

  • c# gettype对代码维护有何影响

    GetType() 是 C# 中的一个方法,用于获取一个对象的类型信息。它对代码维护有以下几个方面的影响: 可读性:使用 GetType() 可以提高代码的可读性,因为它明确地...

  • c# gettype能获取哪些接口信息

    在C#中,GetType()方法用于获取一个对象的类型信息。当你对一个对象调用GetType()方法时,它会返回一个表示该对象类型的Type对象。通过这个Type对象,你可以获取...

  • c++ coroutine适用于高性能计算吗

    C++20 引入了协程(coroutines),它们是一种支持异步编程和协作式多任务的机制。协程在高性能计算(HPC)领域确实有一些潜在的应用,但它们是否适用取决于具体的...

  • 如何使用C++读取二进制文件

    在C++中读取二进制文件,可以使用ifstream类来实现。以下是一个简单的示例代码:
    #include #include int main() { std::ifstream file("example.bin", std:...

  • C++中的文件指针是什么

    在C++中,文件指针是一个指向文件的位置的指针,用于在文件中进行读写操作。文件指针通常用于指示当前读写位置的位置,以便可以从文件中读取数据或将数据写入文件...

  • C++中如何检查文件是否成功打开

    在C++中,可以使用if语句来检查文件是否成功打开。具体的方法是在尝试打开文件的操作后,使用if语句检查文件流的状态是否正常。如果文件成功打开,则文件流的状态...

  • C++中怎么逐行读取文件内容

    在C++中,可以使用std::ifstream类来逐行读取文件内容。以下是一个简单的示例代码:
    #include #include #include int main() { std::ifstream file("exampl...