Java字符串找出4个字节长度的字符
不解释,直接上代码:
由于Iteye代码贴四个字节的UTF-8字符出错,特能图的方式发布几个特殊字符:
- public class Byte4Check {
- public static void main(String args[]) throws UnsupportedEncodingException {
- String nickName = "12葫";
- , 1).getBytes("UTF-8");
- for (byte tt : t) {
- System.out.println(tt);
- }
- System.out.println("====================");
- byte[] t1 = nickName.getBytes("UTF-8");
- ; i < t1.length;) {
- byte tt = t1[i];
- if (CharUtils.isAscii((char) tt)) {
- ];
- ] = tt;
- i++;
- String result = new String(ba);
- System.out.println("1个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xE0) == 0xC0) {
- ];
- ] = tt;
- ] = t1[i+1];
- i++;
- i++;
- String result = new String(ba);
- System.out.println("2个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xF0) == 0xE0) {
- ];
- ] = tt;
- ] = t1[i+1];
- ] = t1[i+2];
- i++;
- i++;
- i++;
- String result = new String(ba);
- System.out.println("3个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xF8) == 0xF0) {
- ];
- ] = tt;
- ] = t1[i+1];
- ] = t1[i+2];
- ] = t1[i+3];
- i++;
- i++;
- i++;
- i++;
- String result = new String(ba);
- System.out.println("4个字节的字符");
- System.out.println("字符为:" + result);
- }
- }
- }
- }
- public class Byte4Check {
- public static void main(String args[]) throws UnsupportedEncodingException {
- String nickName = "12葫";
- , 1).getBytes("UTF-8");
- for (byte tt : t) {
- System.out.println(tt);
- }
- System.out.println("====================");
- byte[] t1 = nickName.getBytes("UTF-8");
- ; i < t1.length;) {
- byte tt = t1[i];
- if (CharUtils.isAscii((char) tt)) {
- ];
- ] = tt;
- i++;
- String result = new String(ba);
- System.out.println("1个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xE0) == 0xC0) {
- ];
- ] = tt;
- ] = t1[i+1];
- i++;
- i++;
- String result = new String(ba);
- System.out.println("2个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xF0) == 0xE0) {
- ];
- ] = tt;
- ] = t1[i+1];
- ] = t1[i+2];
- i++;
- i++;
- i++;
- String result = new String(ba);
- System.out.println("3个字节的字符");
- System.out.println("字符为:" + result);
- }
- if ((tt & 0xF8) == 0xF0) {
- ];
- ] = tt;
- ] = t1[i+1];
- ] = t1[i+2];
- ] = t1[i+3];
- i++;
- i++;
- i++;
- i++;
- String result = new String(ba);
- System.out.println("4个字节的字符");
- System.out.println("字符为:" + result);
- }
- }
- }
- }
参考文献:
http://www.yunmx.com/archives/2011/138.htm
http://zh.wikipedia.org/wiki/UTF-8
Java字符串找出4个字节长度的字符的更多相关文章
- js比较两个String字符串找出不同,并将不同处高亮显示
根据java代码改写成js,下边js文件代码: function StringBuffer() { this.__strings__ = []; }; StringBuffer.prototype.a ...
- java字符串转义,把<>转换成<>等字符【原】
java字符串转义,把<>转换成<>等字符 使用的是commons-lang3-3.4 中的StringEscapeUtils类 package test; import ja ...
- 用JAVA实现找出输入字符串中的出现次数最多的字符及其次数;
//通过Map 类实现,通过键值对的方式,可以将输入的字符串的每一个字符,作为键,每个字符出现的次数作为值:如下: public class Find { public static void mai ...
- java语言 找出文章中出现次数最多的单词
package english; import java.io.File; import java.util.Scanner; import java.io.FileNotFoundException ...
- Java/sql找出oracle数据库有空格的列
1.java方式 String table_sql = "select table_name from user_tables";//所有用户表 List<String> ...
- java 的 数字、汉字 和 字母 的所占字节长度 与 字符长度 (邮件限制50个汉字)
public static void main(String[] args) { String a = "餿餿餿餿餿z"; byte[] bytes = a.getBytes( ...
- Java实现找出数组中重复次数最多的元素以及个数
/**数组中元素重复最多的数 * @param array * @author shaobn * @param array */ public static void getMethod_4(int[ ...
- JAVA 练习 找出素数
package com.zhang.hello; public class Task { /** * 1. 输出打印九九乘法表 * */ public void NO1(){ for(int i=1; ...
- OMG,12 个精致的 Java 字符串操作小技巧,学它
字符串可以说是 Java 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位.不得不承认,最近吐槽大会刷多了,脑子里全是那些段子,写文章都有点不由自主,真的 ...
随机推荐
- 安装uwsgi
apt-get install uwsgi uwsgi-plugin-python
- POJ 2187 旋转卡壳 + 水平序 Graham 扫描算法 + 运算符重载
水平序 Graham 扫描算法: 计算二维凸包的时候可以用到,Graham 扫描算法有水平序和极角序两种. 极角序算法能一次确定整个凸包, 但是计算极角需要用到三角函数,速度较慢,精度较差,特殊情况较 ...
- struts2上传图片
在WEB-INF下新建一个content目录,建立一个upload.jsp <%@ page contentType="text/html; charset=UTF-8" l ...
- fancyBox简单入门
1. 下载 fancyBox,解压后根据需要将文件复制到网页文件夹中(建议不要更改目录结构),并在网页源码中引入相应的 css 样式和 js 文件(如果更改了目录结构,引入的时候请调整相应代码,对应它 ...
- Hdu 1079 Calendar Game
Problem地址:http://acm.hdu.edu.cn/showproblem.php?pid=1079 一道博弈题.刚开始想用判断P点和N点的方法来打表,但无奈不知是哪里出错,总是WA.于是 ...
- 【深圳,武汉】一加科技(One Plus)招聘,寻找不...
[深圳,武汉]一加科技(One Plus)招聘,寻找不... [深圳,武汉]一加科技(One Plus)招聘,寻找不... 来自: 一加 2013-12-30 15:28:04 标题: ...
- Eclipse下执行main函数报java.lang.NoClassDefFoundError的解决
今天执行eclipse下的一个java类,无论run还是debug,都报java.lang.NoClassDefFoundError.而且把main中函数都注释掉,执行还是报一样的错. 检查了一下这个 ...
- linux路由表配置
一.原理说明 1.路由表(table)从0到255进行编号,每个编号可以对应一个别名,编号和别名的对应关系在linux下放在/etc/iproute2/rt_tables这个文件里,一般0编号的tab ...
- 云计算与虚拟化以及IaaS, PaaS和SaaS
概述: 包括:服务器虚拟化.桌面虚拟化.应用虚拟化: 云计算只是用到了虚拟化的技术: soa dubbo结构,阿里巴巴的开源架构: netstat -ntlp; 云服务”现在已经快成了一个家喻户晓的词 ...
- vector的内存释放
转自:http://www.cnblogs.com/summerRQ/articles/2407974.html vector : C++ STL中的顺序容器,封装数组 1. vector容器的内存自 ...