2014-10-30 47 views
0

我試圖在VC++ 2010中使用pugiXML從表單插入數據。將表單數據直接插入PugiXML文檔

的問題是,每當我試圖進入的數據,我得到這個錯誤:

Error 1 error C2664: 'pugi::xml_node::set_value' : cannot convert parameter 1 from 'System::String ^' to 'const pugi::char_t *' 

我使用插入數據的代碼是這樣的:

descr.append_child().set_value(eClass->Text); 

文檔說這些函數接受字符串參數,所以我不知道爲什麼我得到一個「預期的char_t」錯誤。

回答

1

你似乎在試圖通過一個

System::String 

到pugixml。該字符串不是char *,而是CLR字符串。您需要使用

PtrToStringChars() 

訪問實際內容並固定字符串。

看看here關於如何將其內容傳遞給接受char *或wchar_t *的函數。

0

您是否嘗試將字符串轉換爲char *?

descr.append_child().set_value(eClass->Text.c_str());