iOS NSString与UInt8的转换问题
PHPz
PHPz 2017-04-17 13:00:32
[iOS讨论组]

我在iOS里面通过这个NSString转buff_name

NSString *room_name=@"我是谁我是谁";
UInt8 buff_name[1024];
memcpy(buff_name, [room_name UTF8String],[room_name length]+1);
NSLog(@"%s",buff_name);

得到:ÊàëÊòØË
然后我在另一个里面要将这个buff_name转回成NSString,怎么破?

PHPz
PHPz

学习是最好的投资!

全部回复(1)
高洛峰
NSString *room_name = @"我是谁我是谁";
UInt8 buff_name[1024];
memcpy(buff_name, [room_name UTF8String],[room_name lengthOfBytesUsingEncoding:NSUTF8StringEncoding] + 1);
//|UTF8String|返回是包含\0的  |lengthOfBytesUsingEncoding|计算不包括\0 所以这里加上一
printf("%s", (char *)buff_name);
NSString *result = [NSString stringWithCString:(char *)buff_name encoding:NSUTF8StringEncoding];
NSLog(@"%@", result);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号