2012-07-03 54 views
-2
sf.pTo = _T("D:\\Test2"); // it 's ok, you can move to folder Test2 
CString m_to = EditCtrl_To.GetString(); 
sf.pTo = m_to;// EditCtrl_To is Edit Ctrol and it's value is "D:\\Test2" 

我不能移動到文件夾的Test2。 當我比較_T(「D:\ Test2」)& m_to時,它是不相等的。爲什麼?MFC比較字符串

請幫助我,非常感謝!!!!

+0

我覺得有沒有愚蠢的問題,所以我提出你們的選票(現在是-1),但嘗試之前,你問點事做某種研究。 – alcor

回答

0

基本C++:

如果您分配一個字符串,並使用反斜槓\,你要逃避它像c:\\test2。沒有它,你在字符串中有一個製表符。

如果從編輯控件中複製,這是什麼使不同,因爲控制自動完成這一任務。

+0

感謝您的回覆,但不起作用。我嘗試運行如下,但它總是不平等。請幫助我。 :CString t = _T(「D:\\ Test1 \\ *。*」); MessageBoxA(NULL,「Equal」,「Status」,MB_OK);如果(t.CompareNoCase(t)){ \t \t \t}否則{ \t \t MessageBoxA(NULL, 「不等於」, 「狀態」,MB_OK); \t} –

+0

你必須逃避你的字符串_every_ \!我不確定CompareNoCase是否可以與自身進行比較。 – dwo

+0

剛看了一下:如果相等,CompareNoCase返回0,所以你必須改變你的if語句。不是說要問x == x是否有意義。 – dwo