[問題] Xcode關於fstream讀文字檔的問題

看板MacDev作者 (Stardust)時間16年前 (2009/06/04 21:39), 編輯推噓4(407)
留言11則, 3人參與, 最新討論串1/3 (看更多)
各位大大好, 最近開始用Xcode寫C++,想要用ifstream讀一個.txt檔, 以往在window下都是把該txt檔放在和main.cpp同樣的資料夾下即可讀到。 我的程式碼如下 #include <iostream> #include <fstream> #include <string> using namespace std; int main(){ ifstream fin("test.txt"); string line; if(!fin){ cout << "讀檔失敗" <<endl; } while(getline(fin,line)){ cout << line << endl; } fin.close(); return 0; } 雖然compile會過,而test.txt也和main.cpp在同一個資料夾中(我是用Action裡面 的Add new file建立的.txt檔,所以該.txt檔也會出現在整個project的視窗裡面。) 但是終端機跑出來的結果都是"讀檔失敗"。 我試過把test.txt檔放在project中的不同位置,例如 Source 或是 documentation ...等等,但還是會讀檔失敗。 感覺是個簡單的問題,但實在不知道哪裡出了錯... T^T 另外一個問題是,xcode的中文編碼可以調成Big 5嗎? 我在設定裡面只有找到Traditional Chinese (Window and Dos) 和 Traditional Chinese (EUC)。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.235 ※ 編輯: Huvip 來自: 140.112.4.235 (06/04 21:41)

06/04 21:48, , 1F
你要放到"執行檔"所在目錄,而不是原始碼所在目錄
06/04 21:48, 1F

06/04 21:49, , 2F
另外堅持用big5只是自找麻煩...
06/04 21:49, 2F

06/04 21:50, , 3F
有可能原po剛好在寫一個 input.txt是 Big5 的作業啊 :p
06/04 21:50, 3F

06/04 21:50, , 4F
我們班之前才寫過讀 big5 中文的作業 快搞死我了 = =
06/04 21:50, 4F

06/04 21:54, , 5F
樓上正解... T^T 就是Big5作業
06/04 21:54, 5F

06/04 21:59, , 6F
那我會用iconv先轉過再讀....哈哈哈
06/04 21:59, 6F

06/04 22:02, , 7F
感謝一樓回答... 但能否說明一下什麼是“執行檔”?XDDD
06/04 22:02, 7F

06/04 22:11, , 8F
是 $projectpath/build/Release/Unix_executable_file 嗎?
06/04 22:11, 8F

06/04 22:13, , 9F
沒錯,就是那個,所以你要把檔案放到那個目錄下才行
06/04 22:13, 9F

06/04 22:27, , 10F
好像還是無法耶... 而且那路徑是在build&go之後才會出現
06/04 22:27, 10F

06/04 22:33, , 11F
不然就指定絕對路徑啊 ^^
06/04 22:33, 11F
文章代碼(AID): #1A9yvvyJ (MacDev)
文章代碼(AID): #1A9yvvyJ (MacDev)