作者Huvip (Stardust)
看板MacDev
标题[问题] Xcode关於fstream读文字档的问题
时间Thu Jun 4 21:39:04 2009
各位大大好,
最近开始用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)
1F:推 Blueshiva:你要放到"执行档"所在目录,而不是原始码所在目录 06/04 21:48
2F:→ Blueshiva:另外坚持用big5只是自找麻烦... 06/04 21:49
3F:→ ducksteven:有可能原po刚好在写一个 input.txt是 Big5 的作业啊 :p 06/04 21:50
4F:→ ducksteven:我们班之前才写过读 big5 中文的作业 快搞死我了 = = 06/04 21:50
5F:→ Huvip:楼上正解... T^T 就是Big5作业 06/04 21:54
6F:推 Blueshiva:那我会用iconv先转过再读....哈哈哈 06/04 21:59
7F:→ Huvip:感谢一楼回答... 但能否说明一下什麽是“执行档”?XDDD 06/04 22:02
8F:→ Huvip:是 $projectpath/build/Release/Unix_executable_file 吗? 06/04 22:11
9F:推 Blueshiva:没错,就是那个,所以你要把档案放到那个目录下才行 06/04 22:13
10F:→ Huvip:好像还是无法耶... 而且那路径是在build&go之後才会出现 06/04 22:27
11F:推 ducksteven:不然就指定绝对路径啊 ^^ 06/04 22:33