将一个NSString类型字符串获取的长度转换成类似ASCII编码的长度,如汉字2个字节,英文以及符号1个字节这个功能。
由于使用[NSString length]方法调用获取的长度是一个中文和一个英文都是一个字节,而使用

[NSString lengthOfBytesUsingEncoding:NSASCIIStringEncoding] 方法无法识别中文编码,真是令人揪心。

于是想获得一个char*类型的字符串,然后自己遍历一遍,将它整理为类似ASCII编码的格式,这里要用到

[NSString cStringUsingEncoding:NSUnicodeStringEncoding]函数获得一个const char*指针,然后对这个字符串进行遍历,遇/0就跳过,否则length+1,下面是代码,拿出来与大家分享:

-  (int)convertToInt:(NSString*)strtemp {

int strlength = 0;
        char* p = (char*)[strtemp cStringUsingEncoding:NSUnicodeStringEncoding];
        for (int i=0 ; i<[strtemp lengthOfBytesUsingEncoding:NSUnicodeStringEncoding] ;i++) {
             if (*p) {
                     p++;
                     strlength++;
             }
            else {
                p++;
           }
      }
      return strlength;

}

转载于:https://www.cnblogs.com/max5945/archive/2012/07/24/2606957.html

统计含中英文混编的NSString 字符串长度相关推荐

  1. PHP中英文截取函数,php字符串截取函数,支持中英文混体

    php字符串截取函数,支持中英文混体,以前我们截取字符串都会用php自带的函数,今天我来看一下一款字符串截取函数,支持中英文混体的php代码实例吧. php字符串截取函数代码如下: function ...

  2. vue 统计中英文字符串长度_JS判断字符串长度的5个方法(区分中文和英文)

    目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: String.prototype.gblen = function() { var len = 0; for (var i=0; ...

  3. 百度App Objective-C/Swift 组件化混编之路(一)

    作者丨郭金.陈佳 来源丨百度App技术 一. 背景 1.1 Swift 发展历史 2010 年 7 月,克里斯(Chris Lattner)开始设计 Swift.完成基础架构后,克里斯带领开发小组陆续 ...

  4. 使用php语言 统计字符串,php如何查询字符串长度

    [摘要] PHP即"超文本预处理器",是一种通用开源脚本语言.PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言.PHP独特的语法混合了C.Java.Perl以及 ...

  5. android ios 混合编程,React Native与原生(Android、iOS)混编,三端痛点解析

    在做RN混编项目的时候或者面试的时候经常会遇到一些问题,总结起来有以下几种: 1.过多的注册RN组件( AppRegistry.registerComponent() ); 2.从原生跳转指定的RN页 ...

  6. 百度App Objective-C/Swift 组件化混编之路(二)- 工程化

    作者丨张渝.郭金 来源丨百度App技术 前文<百度App Objective-C/Swift 组件化混编之路>已经介绍了百度App 引入 Swift 的影响面评估以及落地的实施步骤,本文主 ...

  7. 初探swift语言的学习笔记九(OC与Swift混编)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/34440159 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  8. Swift和Objective-C混编注意事项

    前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了iOS入门门槛.当然这对新入行的童鞋没来讲,的确算是福音,但对于整个iOS编程从业者来讲 ...

  9. Swift和Objective-C混编

    Swift和Objective-C混编的注意啦 2016-10-19 13:29 编辑: 不灭的小灯灯 分类:iOS开发 来源:仁伯安的简书 0  OCSwift混编 前言 Swift已推出数年,与O ...

最新文章

  1. 安全起见,这款 IDEA 插件赶紧删了吧!
  2. C# 学习笔记(16)ComboBox下拉列表框宽度自适应
  3. android指纹fingerprint学习总结
  4. DHCP数据抓包分析--wireshark
  5. 国内是否可以安装alexa_Alexa可以听到您无法听到的命令,哪些黑客可以利用
  6. 函数调用关系图如何画_程序是如何在 CPU 中运行的(二)
  7. java 签名 ecdsa_Java实现ECDSA签名算法
  8. mysql和oracle区别总结(二)
  9. TensorFlow指定特定GPU以及占用显存的比例
  10. Spark Shuffle 堆外内存溢出问题与解决(Shuffle通信原理)
  11. vue 日历插件ele-calendar
  12. XPS查看器(XPS Viewer)适用Win10系统安装说明
  13. 电脑上计算机无法搜索文件,怎么搜索电脑中的文件?电脑搜索文件教程
  14. c语言中等于号和大于号的优先级,C  读书笔记之 关系运算符重载 大于号 小于号  等于号==...
  15. MSP430番外——BSL介绍
  16. 云计算中心怎么选址?
  17. 您可以在哪里播放最喜欢的圣诞节特价商品
  18. 计算机大学生寒假实践报告吧,大学生计算机寒假社会实践报告心得
  19. 都不知道是不是resnet原始结构,keras实现....
  20. 游戏开发-GM系统的设计

热门文章

  1. 用宏定义实现函数值互换
  2. linux双小于命令,Linux文本比较命令:diff
  3. dhcp只能分配与路由器相同网段么_dhcp工作原理
  4. Knn算法(机器学习)入门(Python实现)
  5. Dimple.js基础
  6. set_union()和set_intersection()的用法
  7. android线程栈默认大小,线程的默认最大堆栈大小 - Internet Information Services | Microsoft Docs...
  8. 老大难的 Java ClassLoader,到了该彻底理解它的时候了
  9. Django + Nginx + Uwsgi + Celery + Rabbitmq 做一个高速响的应网站架构
  10. C#-Home / 详解Asp.Net Sql数据库连接字符串