看板 C_and_CPP 關於我們 聯絡資訊
是這樣的 我使用了以下函式 讀取我目前的工作目錄 GetCurrentDirectoryA(255,chpath); ^^^^^^^ 型態是 char [255] 因為我的目錄有中文字 我存在桌面 然後使用 char filename[255]={'\0'}; char img_file[]="\\Data\\1.bmp"; strcat(filename,chpath); strcat(filename,img_file); FILE *fp = fopen(filename, "r"); ............... 這樣OK 可以成功開檔 讀出資料 cout<<filename 也都印出正確路徑(包含中文) 我依樣畫葫蘆 使用chpath ofstream fw; char filepath[255]={'\0'}; strcat(filepath,chpath); strcat(filepath,"\\GList.txt"); fw.open(filepath,ios::out); fw.is_open()始終都回傳false... 奇怪.... 難道是fopen和ofstream的open 吃的字串有不一樣嘛?? 同樣的方式一個可以開一個不能開= = 請問我是哪裡出了問題呢 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.207.187
zerodevil:用fopen開GList.txt試試看? 08/10 22:16
QQ29:測了....可以開... 08/10 22:18
Jockey66666:std::locale::global(std::locale("")); 08/10 22:56
Jockey66666:試試看加上這行? 08/10 22:56
QQ29:加了.....好像成功了= = 請問這作用是甚麼!!!??? 08/10 23:27
Jockey66666:路徑有中文的話最好加上那行 08/11 11:26
Jockey66666:編碼問題吧 08/11 11:27