在c++中我想把PWSTR objectIDArray[NUM_OBJECTS_TO_REQUEST]中內容寫到一個txt文檔中。在debug的時候,我看到objectIDArray[NUM_OBJECTS_TO_REQUEST]中的內容是如下的:
我想寫出來的內容是“o355”,"o356",他們是文件的唯一標示符。
由於某些原因沒能使用CString去處理。所以用了一個笨方法去處理。
objectIDArray是wchar_t*類型的值。
我想把wchar_t*轉換成char類型的值,這樣就能輸出來了(不轉換的話,輸出了不是我所想要的值)
wchar_t* a =objectIDArray[index];
size_t origsize = wcslen(a) + 1;
const size_t newsize = 100;
size_t convertedChars = 0;
char nstring[newsize];
wcstombs_s(&convertedChars, nstring, origsize, a, _TRUNCATE);
strcat_s(nstring, "\n");
在c++中將nstring寫出來,寫了下面這個方法。
std::ofstream in;
in.open(FilePath1,std::ios::trunc);
in<<nstring;
in.close();
我感覺最折磨人的就是怎麼把PWSTR類型轉化到我們所想要的類型。
我找的的比較有用的資料網址如下:
http://blog.163.com/yanyi_al/blog/static/14260520108162488345/