如何通过ifstream为7列输入提示

时间:2013-08-18 20:07:12

标签: c++

我输入了一个文件名,我想在提示屏幕上显示,但它说明了这一点 “'c:\ test \ sp.csv'未被识别为内部或外部命令,” 即使文件在路径上可用。

1 - 为什么会发生这种错误?如何解决?

C:\用户\ MS&以及c:\测试\ sp.csv 'c:\ test \ sp.csv'未被识别为内部或外部命令, 可操作程序或批处理文件。

2 - 下面的代码只显示一列,如果我想输入7列,我将如何编辑下面的代码?

如何使用带有标题和价格的7列ifstream在提示屏幕上打印出来。

Date      Open    High    Low Close       Volume      Adj Close
6/21/2013 1588.62 1599.19 1577.7  1592.43     5797280000  1592.43
6/20/2013 1624.62 1624.62 1584.32 1588.19     4858850000  1588.19
int main(){

    int open;

    string fileName;
    cout <<"Enter a file name: ";
    getline(cin, fileName);  //c:\\test\\sp.csv

    ifstream inFile(fileName.c_str(), ios::in);   

     while(!inFile.eof()){
      inFile >> open;  
      cout << open << endl;
     }
     inFile.close();    
   system("PAUSE");
   return 0; 
}

谢谢凯莉

1 个答案:

答案 0 :(得分:0)

看起来你在Windows操作系统上

  1. .csv文件扩展名不是可执行文件。它不会被“执行”,即使它存在于当前工作目录/文件夹中。
  2. 您可能想要的是.exe.com.bat文件。

    在这种情况下,在这种情况下,我认为您希望.CPP的可执行文件带有命令行参数。

    可能类似

    C:\Users\MS>c:\test\sp.exe c:\test\sp.csv'考虑您的C ++文件名为sp.cpp

    2。您希望显示sp.scv

    的所有内容

    您可能需要先读取标题(即标题),然后读取值。 StackOverflow上已经提出了很多问题,与此相关,请参考它们。

    另外,为了正确格式化,您可能需要使用std::setw