繁体   English   中英

使用 Ifstream c++ 打开 csv 文件

[英]Open csv file using Ifstream c++

我正在尝试使用 ifstream 打开 csv 文件,但找不到正确的方法 I git 这个错误:没有给出有效的输入文件,请检查给定的文件名

static void read_csv(const string& filename, vector<Mat>& images, vector<int>& labels, vector<string>& infolabels, char separator = ';') {
    std::ifstream file(filename.c_str(), ifstream::in);
    if (!file) {
        string error_message = "No valid input file was given, please check the given filename.";
        CV_Error(Error::StsBadArg, error_message);
    }
...
}

我称之为 function:

const string fn_csv = "C:\\Users\\XXX\\AndroidStudioProjects\\Application\\app\\src\\main\\res\\raw\\face.txt";
    read_csv(fn_csv, images, labels,infolabels);

您可能想检查文件是否存在于您提供的路径中。 这是您可以尝试的东西

  std::string line;
  std::ifstream myfile ("C://somefolder//yourfile.txt");
  if (myfile.is_open())
  {
    while ( getline (myfile,line) )
    {
      std::cout << line << '\n';
    }
    myfile.close();
  }

  else 
     std::cout << "Unable to open file";

此外,无需使用 c_str() 转换为 C 字符串。 ifstream 构造函数接受 std::string 对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM