2017-07-30 58 views
1

VS Express 2015中的fstream,ifstream和ofstream C++根本不適用於我。我嘗試在MingGW中打開一個當然可以工作的文件,但是在VS Studio中,它不想打開指定位置的文件。我也把文件「Artikel.txt」放在項目的根目錄下,但沒有什麼區別。 嘗試使用errno來檢測錯誤,失敗。我也無法在輸出中獲得錯誤消息。VS Express 2015 Win10應用程序 - ifstream不打開文件

void App1::MainPage::initArtikel() 
{ 
    ifstream file; 
    file.open(L"C:\\Users\\...\\Documents\\Visual Studio 2015\\Projects\\App1\\Artikel.txt"); 
    string zeile; 
    Artikel neuerArtikel; 
    if (file.is_open()) 
    { 
     OutputDebugStringW(L"Artikel.csv wird geöffnet..."); 
     while (getline(file, zeile)) 
     { 
      size_t pos = 0; 
      string token; 

      //Erste Spalte "Name" 
      pos = zeile.find(CSV_DELIM); 
      token = zeile.substr(0, pos); 
      neuerArtikel.Name = stops(token); 
      zeile.erase(0, pos + 1); 

      //Zweite Spalte "Preis" 
      pos = zeile.find(CSV_DELIM); 
      token = zeile.substr(0, pos); 
      neuerArtikel.Preis = stod(token); 
      zeile.erase(0, pos + 1); 

      sortiment.push_back(neuerArtikel); 
     } 
     //file.close(); 
    } 
    else 
    { 
     OutputDebugStringA(strerror(errno)); 
    } 
} 

+1

嘗試打開它提供廣泛的路徑字符串。也許路徑包含非Unicode符號。 – VTT

+0

檢查來自'errno'的錯誤代碼。 – tambre

+0

請編輯您的問題並添加相關信息。評論不適合狀態更新。 –

回答

0

在我的情況OutputDebugStringA(strerror(errno));提供:

'Permission denied'

如果我使用file.open(Artikel.csv");然後我得到了以下錯誤:

'No such file or directory'

事實上把文件「Artikel.csv 「位置:

C:\Users\ ...\Documents\Visual Studio 2015\Projects\App1\Debug\App1\AppX

給我的輸出:

'Artikel.csv wird geöffnet'

相關問題