首页 > 解决方案 > 如何在 C++ 程序中读取任何 csv 文件,而不仅仅是特定文件

问题描述

我正在尝试做我的功课(对 c++ 来说相当新),它需要我创建一个程序来读取来自 yahoo Finance 的任何 .csv 文件。我知道如何读取特定文件,但我不知道如何概括

我曾尝试在谷歌上搜索,但没有真正回答我的问题。

这是我为读取特定文件所做的

ifstream file;
file.open("GLD.csv");
if (file.is_open()) {
        while (getline(file, line)) {
            cout << line << endl;

我们需要更改主 .cpp 文件文件夹中的 csv 文件,因此文件名不会一直是“GLD.csv”。我将如何“概括”读取不同 .csv 文件的输入?谢谢你

标签: c++csv

解决方案


我可以想到 3 种方法来做到这一点:

  1. 使用命令行参数。int main (int argc, char *argv[]) {}您可以通过将 main 定义为其中 argc 是参数的计数而 argv 是值来获取命令行参数。所以当你运行程序时,你可以做program.exe filename.csv
  2. 扫描输入文件名。cin >> filename;
  3. 获取当前目录并获取所有 csv 文件。这是有关如何获取目录中文件的链接。

推荐阅读