将wchar_t转换为Char

时间:2011-04-01 05:33:44

标签: c# char pinvoke marshalling wchar-t

我需要转换:

wchar_t arr[20][32] 

char arr[20][32]

转换是在DLL中完成的(用C ++编写),我希望在Windows窗体(用C#编写)中向用户显示arr的值。

是否可以直接在文本框中显示wchar_t,还是应该从DLL中的wchar_t转换为char,然后从char转换为string在Windows窗体?

这次转换是如何完成的?

1 个答案:

答案 0 :(得分:1)

如果转换是在C ++中完成的,那么看一下在kernel32中定义并从kernel32导出的WideCharToMultibyte函数

如果转换是在C#中完成的,请查看System.Text.ASCIIEncoding.ASCII.GetBytes(string)函数以获取unicode字符串的ASCII表示。