将PWSTR数组写出来

在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/



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章