由于Java是基于Unicode编码的,因此,一个汉字的长度为1,而不是2。但有时需要以字节单位获得字符串的长度。例如,“123abc长城”按字节长度计算是10,而按Unicode计算长度是8。为了获得10,需要从头扫描根据字符的Ascii来获得具体的长度。如果是标准的字符,Ascii的范围是0至255,如果是汉字或其他全角字符,Ascii会大于255。因此,可以编写如下的方法来获得以字节为单位的字符串长度。
public int getWordCount(String s)
{
int length = 0;
for(int i = 0; i < s.length(); i++)
{
int ascii = Character.codePointAt(s, i);
if(ascii >= 0 && ascii <=255)
length++;
else
length += 2;

    }return length;}当然,也可以采用正则表达式来简化上面的方法,代码如下:
public  int getWordCount(String s)
{s = s.replaceAll("[^\\x00-\\xff]", "**");int length = s.length();return length;
}
上面代码的基本原理是将字符串中所有的非标准字符(双字节字符)替换成两个标准字符(**,或其他的也可以)。这样就可以直接例用length方法获得字符串的字节长度了。

复制代码

或者:

return String.getByte().length() ;
注意可以输入参数
return String.getByte(“gbk”).length() ;

Java获取字符串长度相关推荐

  1. java 获取字符串长度_ava练习实例:java字符串长度与Java String charAt() 方法 (建议收藏)...

    JJava 字符串长度 public class StringDemo {public static void main(String args[]) {String palindrome = &qu ...

  2. java获取字符串长度_java中定义字符串String s=”pzhu”,下面操作可以取得字符串长度的是( )。...

    [单选] 施工现场宿舍.办公室等临时用房建筑构件的燃烧性能等级应为():当采用金属夹芯板材时,其芯材的燃烧性能等级应为(). [填空题] <敦煌曲谱>又名(),是933年用燕乐半字谱抄写的 ...

  3. c语言中用于获取字符串长度的函数是,C语言中求字符串长度的函数的几种实现方法...

    C语言中求字符串长度的函数的几种实现方法 1.最常用的方法是创建一个计数器,判断是否遇到'\0',不是'\0'指针就往后加一. int my_strlen(const char *str) { ass ...

  4. Java String字符串长度不足指定位数补0

    Java String字符串长度不足指定位数补0 自己项目中有个需求:需要5位随机数-范围在1-99999 随机数可以利用Random()来获取,但是想要生成的随机数都是5位数,那就需要做一点小处理啦 ...

  5. html5统计字符串,获取字符串长度

    有什么方法直接得到字符串的长度吗????????? 在头文件位置写 #include 然后在后面用b=strlen(a); b是一个int型的变量 a是字符串或者字符数组得首地址. 在jsp页面接受输 ...

  6. Go 学习笔记(31)— 字符串 string、字符 rune、字节 byte、UTF-8 和 Unicode 区别以及获取字符串长度

    1. 字符串 string 类型 Go 语言中字符串的内部实现使用 UTF-8 编码,通过 rune 类型,可以方便地对每个 UTF-8 字符进行访问.当然, Go 语言也支持按照传统的 ASCII ...

  7. Swift3.0语言教程获取字符串长度

    Swift3.0语言教程获取字符串长度 Swift3.0语言教程获取字符串长度,当在一个字符串中存在很多的字符时,如果想要计算字符串的长度时相当麻烦的一件事情,在NSString中可以使用length ...

  8. C# 获取字符串长度 获取字符串字节长度

    获取字符串长度 string str = "ABCDadcf测试"; int l = str.Length; 获取字符串字节长度 public int ByteLength(str ...

  9. js 截取 前后 空格 获取字符串长度

    为什么80%的码农都做不了架构师?>>>    var NYString = {     // 去除字符串前后空格     Trim : function(sSubStr){    ...

  10. (转)Shell中获取字符串长度的七种方法

    Shell中获取字符串长度的七种方法 原文:http://blog.csdn.net/jerry_1126/article/details/51835119 求字符串操作在shell脚本中很常用,下面 ...

最新文章

  1. tensorflow 训练权重不更新_TensorFlow模型剪枝原理
  2. 卡尔曼滤波滤波方程_了解卡尔曼滤波器及其方程
  3. JavaScript设计模式 Item 2 -- 接口的实现
  4. 【数据库系统】数据模型、模式、数据的概念辨析
  5. WPF xml配置文件里面的大于小于号转义
  6. WsusAgent检测脚本
  7. 几个可能会用到的前端库
  8. 使用sqlmetal工具自动生成SQL数据库的Linq类文件
  9. 华为qy2音乐如何转换为mp3_华为手机还有这种骚操作?开启这个功能,让你体验至尊级待遇...
  10. pandas安装报错
  11. TPScan一键ThinkPHP漏洞检测工具使用
  12. 算术平均值c语言函数名称,求算术平均数和集合平均数的源代码
  13. 联想g400从u盘启动计算机,联想g400怎么从u盘启动-联想g400设置u盘启动方法
  14. iview在table中添加图片
  15. 1011: [HNOI2008]遥远的行星
  16. VBA - 粘贴为数值型
  17. python子图标题_python, 如何在subplot在总的图画上面加title?
  18. python中aorb是什么意思_ABtest的python实现
  19. 正交投影与弱透视投影
  20. c语言简单的字符串处理

热门文章

  1. 抖音无水印视频批量下载助手
  2. 【Ydui.js】------ ydui.js 中的 util 中的方法讲解如何调用使用 例如:获取地址栏信息,js 倒计时,cookie, 获取图片地址等
  3. vue+ydui使用iconfont时图标不显示
  4. 残差网络resnet网络原理详解
  5. Spring Boot - Mybatis 缓存
  6. python 图像检索_深度学习图像检索
  7. 核心指导网络由任务编码器_如何在现实世界中与实际用户一起指导您的编码和编码生涯...
  8. 二极管PN结的形成原理浅述
  9. gerber文件怎么导贴片坐标_如何学习贴片机编程
  10. idea无法找到主启动类_IDEA打包jar-解决找不到或无法加载主类 main的问题