2011-11-30 185 views
0

我的文件位於C:\\Input\\pStep.p21。我想在我的cpp程序中打開該文件。我該怎麼做?我正在使用char* inputPath="C:\\Input\\pStep.p21";但它沒有在程序中找到我的文件。如何在VC++中獲取當前工作目錄?它的工作如果試圖保存p21文件,但如果我讀它失敗。如何在C++中讀取文件的自定義路徑?

我的代碼在CAA:

#include<CATSDM_Services> 
#include<SdaiModel.h> 
#include<CATIUniCodeString> 
--- 
--- 

main() 
{ 
CATIUniCodeString inputPath("C:\\Input\\pStep.p21"); 
HRESULT hr=S_OK; 
SdaiModel edxModel=Null; 
//this method reads express schema name, input p21 file and sdaimodel 
hr=CreateModelFromFile(inputPath,"parts",edxModel); 
if(FAILED(hr)) 
{ 
cout<<"Model created succesfully"; 
} 
else 
{ 
cout<<"Failed"; 
} 
} 
+0

它不是位於'C:\\ \\輸入input.txt'(雖然這就是你需要在C/C++使用它你怎麼樣試圖打開它?什麼是「沒有找到我的程序文件」是什麼意思?請編輯您的問題,並添加更多的細節,包括你正在使用,試圖打開它,什麼「不findinng我的文件程序」的意思的代碼。謝謝。 –

+0

甚至不是唯一的方法,所有涉及到導入P21文件sdaimodel都產生了同樣的錯誤的方法。我失去了something..Creating新模型的工作文件具有相同的架構就是我上面使用(部分)。但是當涉及到導入現有數據(p21文件)時困擾我很多。 – user1061293

回答

0

對不起,我沒有看到這個問題早。

從我在你的代碼我看到,測試是錯誤的。 FAILED()宏表示錯誤的執行。因此,從您的代碼中,如果您在控制檯上看到「失敗」,實際上意味着該方法的執行運行正常。

更改您的代碼是這樣的:

if (SUCCEEDED(hr)) 
{ 
    cout<<"Model created succesfully"; 
} 
else 
{ 
    cout<<"Failed"; 
} 
相關問題