void Lexicon::buildMapFromFile(string filename) //map
{
ifstream file;
file.open(filename.c_str());
string wow, mem, key;
unsigned int x = 0;
while(true) {
getline(file, wow);
if (file.fail()) break; //check for error
while (x < wow.length()) {
if (wow[x] == ',') {
key = mem;
mem.clear();
x++; //step over ','
} else
mem += wow[x++];
}
list_map0.put(key, mem); //char to string
list_map1.put(mem, key); //string to char
mem.clear(); //reset memory
x = 0;//reset index
}
file.close();
}
該函數讀取一個2列的csv文件,並創建一個column1映射,並以column1作爲鍵。我使用g ++進行編譯,並且該文件位於大學文件共享中,當我使用./foo運行程序時,csv文件[與foo在同一目錄文件夾中]不會被讀取......爲什麼?C++ linux ifstream讀取csv文件
你得到什麼消息,當您嘗試運行? – hmatar
#Hassan TM該程序運行正常,但從cout檢查我可以看到該文件沒有被讀取 –