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);
- }
- }
- }
- }
参考文献:
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 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位.不得不承认,最近吐槽大会刷多了,脑子里全是那些段子,写文章都有点不由自主,真的 ...
随机推荐
- 2014 HDU多校弟五场J题 【矩阵乘积】
题意很简单,就是两个大矩阵相乘,然后求乘积. 用 Strassen算法 的话,当N的规模达到100左右就会StackOverFlow了 况且输入的数据范围可达到800,如果变量还不用全局变量的话连内存 ...
- 在线QQ客服
代码一: <a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=451314789&si ...
- Delphi资源大全
A curated list of awesome Delphi frameworks, libraries, resources, and shiny things. Inspired by awe ...
- 多玩YY聊天记录解析全过程
再来一发,现在开始! 下载安装YY,观察YY目录,很明显的发现了sqlite3.dll,这个数据库很多很多很多软件都在用,简单小巧且开源.删除sqlite3.dll 进入YY,历史记录不能正常显示,基 ...
- FreePascal的VMT与Delphi不一致,没有负方向
因为不需要与C++兼容嘛:http://www.freepascal.org/docs-html/prog/progsu168.html 如果要想取得它真正的VMT,可以Pointer强行转换+100 ...
- 为什么要用BASE64
BASE64和其他相似的编码算法通常用于转换二进制数据为文本数据,其目的是为了简化存储或传输.更具体地说,BASE64算法主要用于转换二进 制数据为ASCII字符串格式.Java语言提供了一个非常好的 ...
- C++ pair 使用方法
类模板:template <class T1, class T2> struct pair 參数:T1是第一个值的数据类型,T2是第二个值的数据类型. 功能:pair将一对值组合成一个值, ...
- typedef 总结
其实在正儿八经学C语言的时候typedef用的不是很多,记得书上对它的介绍只是一笔带过.的确它的用法是很简单,但这不代表在使用的过程中不会出错,今天来个彻底的总结. 作用:用来建立新的数据类型名.(注 ...
- 【转】增强 scite 编辑器的代码提示功能
在 windows 下写 Lua, 我能找到的最好的编辑器就是 luaForWindows 项目里带的 scite. npp (即 notepad++ ) 也将就着能用, 不过只有代码高亮和简单的单词 ...
- 教你在mac上配置adb环境变量
1.打开终端,一次输入如下命令 cd ~ touch .bash_profile open -e .bash_profile 2.这时候会在TextEdit中打开一个空白文档,输入下面的语句 a. 输 ...