NSString 与 wchar_t*之间转化_^_^!的博客-程序员宅基地

http://www.16kan.com/post/209221.html



+(NSString*)getStringFromWChar:(const wchar_t*) inStr

{

    setlocale(LC_CTYPE"UTF-8");

    int strLength = wcslen(inStr);

    int bufferSize = (strLength+1)*4;

    char *stTmp = (char*)malloc(bufferSize);

    memset(stTmp, 0, bufferSize);

    wcstombs(stTmp, inStr, strLength);

    NSString* ret = [[[NSStringallocinitWithBytes:stTmp length:strlen(stTmp)encoding:NSUTF8StringEncodingautorelease];

    free(stTmp);

    return ret;

}

 

- (std::wstring) getWCharFromString

{

 

    const char  *cString;

    cString = [selfcStringUsingEncoding:NSUTF8StringEncoding];

    setlocale(LC_CTYPE"UTF-8");

    int iLength = mbstowcs(NULL, cString, 0);

    int bufferSize = (iLength+1)*sizeof(wchar_t);

    wchar_t *stTmp = (wchar_t*)malloc(bufferSize);

    memset(stTmp, 0, bufferSize);

    mbstowcs(stTmp, cString, iLength);

    stTmp[iLength] = 0;

        printf("begin %ls",stTmp);

    std::wstring wstr(stTmp);

    free(stTmp);

    return wstr;

}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/anypkv/article/details/8550084

智能推荐

Nuitka打包PyTorch项目_nuitka pytorch_锦恢的博客-程序员宅基地

前提概要最近的暑期课程需要实现一个人脸检测,并做成有图形用户界面的软件,和队友商量后,决定我将核心部件——人脸检测封装成一个命令行工具。于是乎,我就有了将PyTorch项目打包成可执行文件的应用需求,关于Python打包,常用的工具包有Pyinstaller和Nuitka。由于Nuitka给我感觉更佳,于是乎,这篇文章就探讨如何将比较大的PyTorch项目打包成可执行文件。当然,pytorch本身提供了一套成熟的部署方案,但是最近没时间去学Nuitka的安装具体安装过程可以看看这篇文章:Pyt

WPS2019教育版和EndnoteX9关联_qq_39292916的博客-程序员宅基地

WPS2019教育版与EndNoteX9关联最近我要写开题报告,要求参考文献不少于30篇,插入参考文献当然需要使用EndNote正好电脑里有以前的EndNote的X9的版本,也就安装了,但是WPS一直和EndNote不能关联,我可是吃过安装软件的坑,这么宝贵的夜晚时间当然要用来干有趣的事情了,怎么可以用来折腾呢?所以我就查找了几篇资料,仔细阅览之后发现有这样的两种情况存在https://w...

组原实验报告【RAM存储器实验】_寒夜※星辰的博客-程序员宅基地

一、实验目的:1.了解半导体静态随机读写存储器SRAM的工作原理及其使用方法2.掌握半导体存储器的字、位扩展技术3.用proteus设计、仿真基于AT89C51单片机的RAM扩展实验二、实验内容:1.用SRAM 6116芯片扩展AT89C51单片机RAM存储器(2KB)选择8个连续的存储单元的地址,分别存入不同内容,做单个存储器单元的读/写操作实验。2.用SRAM 6116芯片扩展AT89C51单片机RAM存储器(8KB)必须使用译码器进行扩展;选择8个连续的存储单元的地址,分别存入不同内

wordpress footer.php,wordpress的get_footer( )函数功能详解_duck_1984的博客-程序员宅基地

功能:加载页脚模板。get_footer(string$ name=null)描述包含主题的页脚模板,或者如果指定了名称,则将包含专用页脚。对于参数,如果文件名为“footer-special.php”,则指定参数为“special”。参数$名称(string)(可选)专用页脚的名称。默认值:null来源function get_footer( $name = null ) {/...

Linux C语言用管道进行进程间通信_c语言实现,pipe execlp子进程通信_wwxy261的博客-程序员宅基地

#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <string.h>int main(void){ int fd[2]; int ret ...

hadoop2.2.0-64位 苦逼历程_想ai抽的博客-程序员宅基地

安装环境决定了我的苦逼路程:

随便推点

推荐几款简单的音视频编辑软件_qq_43173244的博客-程序员宅基地

昨天给朋友推荐了几个自媒体视频剪辑的软件,朋友看了之后直呼太好了,我一直需要这样的软件。今天就把这些软件发出来让广大网友也看一看,这些视频剪辑软件中有国内的也有国外的,各有所长,怎么选择就看大家自己的咯!下面,咱们就把国内外比较好的音视频剪辑软件给大家罗列一下,大家想用的就可以去下载应用起来。这些软件的特点除了应用简单之外,剪辑效果也很棒。1、迅捷音频转换器一款专业的音频编辑工具,拥有...

mui 事件管理及自定义事件详解_dblhj3915的博客-程序员宅基地

<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,...

chrome怎样查看一个元素绑定的事件?_m0_37158404的博客-程序员宅基地

(方法1)chrome插件Visual Event:优点:操作简单;缺点:不能去打断点,也无法查看iframe中页面的事件,只有使用方法2 (方法2)打开开发者工具,选中元素后,在Event Listeners中可以可以看到其绑定的事件,不要勾选“Ancestors All”...

android 随机播放代码,Android | 一个随机播放网络音乐的小 Demo_PMO大会的博客-程序员宅基地

前言是这样,前几天接触到一个可以随机获取网络音乐及其热评的 API(关于该API:github.com/isecret/yun… ),于是乎就想着要做一个小 demo 来练练手吧!目前的效果就是上面那个样子。我目前有打算把这个 demo 长期维护下去,后面会加入更多功能,例如收藏、下载等。需求需求很简单,就是通过 API 随机获取一首在线音乐及其某一条热评,实现音乐的后台播放、暂停、随机切换,显示...

Linux定时任务Crontab解析_象在舞的博客-程序员宅基地

       crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。Linux下的任务调度分为两类,系统任务调度和用户任务调度。       系统任务调度:系统周期性所要...

linu下nginx的安装_weixin_30757793的博客-程序员宅基地

这里用到的环境是nginx-1.8.0,linux用的是CentOS-7-x86_64-DVD-1804.iso版本1 什么是nginxNginx ("engine x") 是一个高性能的 HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 服务器。很多大网站都是使用nginx做反向代理,应用非常广泛。2 应用场景1、http服务器,可以做静态网页的htt...

推荐文章

热门文章

相关标签