passing unicode string from C mex function to Matlab
Show older comments
Hello, I need to send a unicode string from my C mex function to Matlab. At the moment, I try to use mxCreateString to create the variable to return, but unfortunately, I do not get the correct string in Matlab. The string in my C mex function is UTF8 encoded. As far as I can see, the mxCreateString takes a char* only. Does this mean, that mxCreateString can not handle unicode strings? Is there any other way to return unicode strings to Matlab?
Am I correct that Matlab itself uses UTF16 to store strings?
Thank you in advance,
Christian
Accepted Answer
More Answers (1)
Jan
on 9 Apr 2013
1 vote
See also:
- http://www.mathworks.com/matlabcentral/answers/3198-convert-matlab-string-to-wchar-in-c-mex-under-windows-and-linux
- http://www.mathworks.com/matlabcentral/newsreader/view_thread/301249
There is the undocumented function mxArrayToString_UTF8.
Categories
Find more on MATLAB Compiler in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!