java 汉字处理_Java汉字处理
1、字符串长度
String s1 = "我是中国人";
String s2 = "imchinese";
String s3 = "im中国人";
System.out.println(s1+":"+new String(s1).length());
System.out.println(s2+":"+new String(s2).length());
System.out.println(s3+":"+new String(s3).length());
输出结果:
我是中国人:5
imchinese:9
im中国人:5
结论:字符串里如果有双字节的字符java就把每个字符都按双字节编码,如果都是单字节的字符就按单字节编码。
2、提取字符串中的汉字
String str = "af我是kz中h国m人ig";
char ch[] = str.toCharArray();
for (int i = 0; i < ch.length; i++) {
if (ch[i] > 255) {
System.out.print(ch[i]);
}
}
输出结果:
我是中国人
3、打印汉字编码
(1)打印汉字的unicode编码
char ch = "中";
System.out.println(Integer.toHexString(ch));
输出结果:
4e2d
(2)打印汉字的GBK编码
String str = "中";
byte[] bt = str.getBytes("GBK");
System.out.println(Integer.toHexString(bt[0]).substring(6)
+Integer.toHexString(bt[1]).substring(6));
输出结果:
d6d0
说明:java内部使用的是unicode编码,汉字的Unicode编码范围为/u4E00-/u9FA5 或/uF900-/uFA2D,如果不在这个范围内就不是汉字。我们用char定义一个变量,如char ch="中"; 这时,ch是Unicode编码的。GBK编码与unicode编码是不同的两种编码方式,因此它们打印出的值是不一样的。GBK的整体编码范围是为0x8140-0xFEFE,不包括低字节是0x7F的组合。高字节范围是0x81-0xFE,低字节范围是0x40-7E和0x80-0xFE。
4、用两个byte组成一个汉字
byte bb[] = new byte[2];
bb[0] = -42;
bb[1] = -48;
String str = new String(bb);
System.out.println(str);
输出结果:
中
java 汉字处理_Java汉字处理相关推荐
- java简拼_java 汉字转为简拼
public static void main(String[] args) { String str = null; str = "顾亮"; System.out.println ...
- java 字符和汉字比较_Java比较汉字字符串排序与C++比较汉字排序
一.Java比较汉字 // Collator 类是用来执行区分语言环境的 String 比较的,这里选择使用CHINA Comparator cmp = Collator.getInstance(ja ...
- java 3d验证码_Java实现验证码具体代码(图片、汉字)
本文为大家分享两个实例,相信大家一定会喜欢. 实例1:随机生成验证码图片并将之输出为一个png文件 效果图: import java.awt.Color; import java.awt.Font; ...
- java hanyupinyinoutputformat();_Java汉字转拼音pinyin4j用法
Java汉字转拼音pinyin4j用法 在学习编程的过程中,我觉得不止要获得课本的知识, 更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,更多Java学习,请登陆疯狂java官网. ...
- Java 中文转拼音/汉字转拼音, 中文转五笔/汉字转五笔, 下载字典!
Java 中文转拼音/汉字转拼音, 中文转五笔/汉字转五笔, 下载字典! 源码 CharacterElement.java 源码 Dict.java 输出拼音 输出五笔 输出全部 字典下载地址 源码 ...
- java正则不能输入汉字_求一个正则表达式只输入字母或数字或汉字,要过滤特殊字符...
正则表达式:只能有数字或中文或字母组成 chenzhe_n16292018-09-06 一个正则表达式测试(只可输入中文.字母和数字) u0129242379192015-10-05 js正则表达式限 ...
- JAVA 编程中的汉字处理(1)---java 编程技术中汉子问题的分析与解决
Java 编程技术中汉字问题的分析及解决 段明辉, 自由撰稿人 简介: 在基于 Java 语言的编程中,我们经常碰到汉字的处理及显示的问题.一大堆看不懂的乱码肯定不是我们愿意看到的显示效果,怎样才能够 ...
- java 半个汉字,Java截取字符串军令状汉字不被截取半个
Java截取字符串保证汉字不被截取半个 Java截取字符串保证汉字不被截取半个 public class SplitString { public static void main(String[] ...
- 用java的io做一个代码计数器,如何制作Java页面计数器_java
大庆采油六厂采油工艺研究所 王兵 王波 常常逛WWW的人,一定对许多起始页上的计数器感兴趣.每当你光临某个站点的起始页时,它的计数器就很亲切地告诉你,从某年某月某日开始,你是第几位光临的人.你可能也想 ...
- 【源码+图片素材+详细教程】Java游戏开发_Java开发经典游戏飞翔的小鸟_飞扬的小鸟_Java游戏项目Flappy Bird像素鸟游戏_Java课程设计项目
课程目标: 1.通过本课程的学习巩固Java的相关基础知识,例如循环判断,数组和集合的使用,对象的继承,接口的实现,窗口的创建,事件监听,图形绘制. 2.完成小鸟的移动,管道自动生成.碰撞死亡,计分系 ...
最新文章
- error_reporting笔记
- CCF之地铁修建(100分)
- (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作
- linux之ps命令
- C# 编译或者解释?
- 接口测试搭建之JMeter接口测试与SoapUI接口测试
- 万兆网、10G ethernet subsystem IP核
- 海思Hi3519A开发(5.梳理海思文档与运行sample代码)
- 怎样删除wps文档计算机信息,文本框删除,wps怎么删除文本框
- Atcoder ARC093F : Dark Horse
- 数学悖论与三次数学危机
- 目标检测YOLO实战应用案例100讲-自动驾驶场景下的三维目标检测技术研究
- 有意思,原来SQL中的NULL是这么回事儿
- 人脸旋转对齐(opencv-python)
- JSP系列一:JSP简介
- ip addr 不显示ip地址
- InvalidArgumentError: Can not squeeze dim[1], expected a dimension of 1, got 10 for metrics/acc/
- 什么是前端的核心竞争力
- 这个母亲节的礼物,我为你们准备好了!(内含福利)
- web与web服务器的概念理解