我試圖編寫一個程序來解析CSV文件(轉換爲.txt)的第一和第十六列。我在可執行文件的文件夾中有CSV(「posts.txt」)文檔。但是,無論何時我嘗試運行可執行文件,我的程序都會傳遞它無法打開文件(或「!infile.is_open()」)。介意給我一些幫助?我在Mac OSX 10.8.3上運行Xcode 3.2.3。代碼如下所示。Ifstream文件雖然一切似乎都沒有打開(C++)
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string.h>
using namespace std;
void answeredPostGrabber()
{
ifstream inFile("posts.txt");
string postNumber;
string answerNumber;
string throwAway;
if(inFile.is_open())
{
while(inFile.good())
{
getline(inFile,postNumber,',');
cout << postNumber << ",";
for(int y=1;y++;y<16)
{
getline(inFile,throwAway,',');
}
getline(inFile,answerNumber,',');
cout << answerNumber << endl;
ofstream edges;
edges.open("edges.txt",ios::app);
edges << postNumber << "," << answerNumber<< endl;
edges.close();
ofstream nodes;
nodes.open("nodes.txt",ios::app);
nodes << postNumber << "\n" << answerNumber << endl;
nodes.close();
getline(inFile,throwAway);
}
}else cout << "ERROR: Unable to open file." << endl;
}
int main()
{
answeredPostGrabber();
return 0;
}
預先感謝您!
您是否已將工作目錄設置爲「posts.txt」所在的目錄?如果你從XCode中運行它,情況可能不會如此。否則,文件權限是否正確? – arne
爲什麼不創建一個虛擬文件,然後去找到它。這就是無法找到這個文件*應該*。 – ChiefTwoPencils