native与ascii互转
package org.edujks.schoolapp.schoolbasedresearch.schoolsubject.action;public class DecodeUtil {/*** @declare native与ascii码互转* @param args* @author Lilin*/public static void main(String[] args) {// TODO Auto-generated method stubString a = chinaToUnicode("飞机f发多少adsfadsfadfad");System.out.println(a);System.out.println(decodeUnicode(a));}/*** 把中文转成Unicode码* * @param str* @return*/public static String chinaToUnicode(String str) {String result = "";for (int i = 0; i < str.length(); i++) {int chr1 = (char) str.charAt(i);if (chr1 >= 19968 && chr1 <= 171941) {// 汉字范围 \u4e00-\u9fa5 (中文)result += "\\u" + Integer.toHexString(chr1);} else {result += str.charAt(i);}}return result;}/*** 判断是否为中文字符* * @param c* @return*/public static boolean isChinese(char c) {Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS|| ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS|| ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A|| ub == Character.UnicodeBlock.GENERAL_PUNCTUATION|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION|| ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {return true;}return false;}/**** 转码* * @param theString* @return* * @time 2012-6-13 下午5:54:34 TODO*/public static String decodeUnicode(String theString) {char aChar;int len = theString.length();StringBuffer outBuffer = new StringBuffer(len);for (int x = 0; x < len;) {aChar = theString.charAt(x++);if (aChar == '\\') {aChar = theString.charAt(x++);if (aChar == 'u') {int value = 0;for (int i = 0; i < 4; i++) {aChar = theString.charAt(x++);switch (aChar) {case '0':case '1':case '2':case '3':case '4':case '5':case '6':case '7':case '8':case '9':value = (value << 4) + aChar - '0';break;case 'a':case 'b':case 'c':case 'd':case 'e':case 'f':value = (value << 4) + 10 + aChar - 'a';break;case 'A':case 'B':case 'C':case 'D':case 'E':case 'F':value = (value << 4) + 10 + aChar - 'A';break;default:throw new IllegalArgumentException("Malformed \\uxxxx encoding.");}}outBuffer.append((char) value);} else {if (aChar == 't')aChar = '\t';else if (aChar == 'r')aChar = '\r';else if (aChar == 'n')aChar = '\n';else if (aChar == 'f')aChar = '\f';outBuffer.append(aChar);}} elseoutBuffer.append(aChar);}return outBuffer.toString();}}
转载于:https://www.cnblogs.com/gisblogs/p/4123499.html
native与ascii互转相关推荐
- java ask to_Java native和ASCII 互转工具Native2AsciiUtils.java下载
/* * Copyright 2012-2013 The Haohui Network Corporation */ package com.haohui.common.utils; /** * Ja ...
- python ascii函数二进制_python模块介绍- binascii:二进制和ASCII互转以及其他进制转换...
20.1 binascii:二进制和ASCII互转 作用:二进制和ASCII互相转换. Python版本:1.5及以后版本 binascii模块包含很多在二进制和ASCII编码的二进制表示转换的方法. ...
- [编程笔记] UNICODE和UTF-8和ASCII互转
转载地址:https://blog.csdn.net/fzuim/article/details/72729833 此代码是在windows平台上运行. 最近维护一个项目时发现,MFC的Cstring ...
- native转ascii工具(复制成html文件即可用)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!-- saved from ur ...
- windows下C++实现Unicode和ASCII编码的互转
不管什么项目,或多或少都会遇到那么一点点转码的问题, 本片就提供两个实现Unicode和ASCII互转的函数. 环境为WINDOW 10, VS2010 (该函数在Windows下,也使用了windo ...
- React Native之原理浅析
一.JavaScriptCore 讲React Native之前,了解JavaScriptCore会有帮助,也是必要的.React Native的核心驱动力就来自于JS Engine. 你写的所有JS ...
- java ascii 的转换
/*** description: native2ascii.exe Java code implementation.* @author xyc 创建时间:Dec 12, 2014* @Copyri ...
- 整理了60个Python小例子,拿来即用!
小例子 一. 数字 1 求绝对值 绝对值或复数的模 In [1]: abs(-6) Out[1]: 6 2 进制转化 十进制转换为二进制: In [2]: bin(10) Out[2]: '0b101 ...
- Python 的一些日常高频写法总结!
(点击上方快速关注并设置为星标,一起学Python) 来源: https://github.com/jackzhenguo/python-small-example 今天给大家准备了60个python ...
最新文章
- Exchange企业实战技巧(5)配置OWA域名简写
- java多张图片合成一张_OLIS 多张图片合成分享
- Go 语言配置 TensorFlow
- python编程入门与案例详解pdf-这些年我读过的技术经典图书(附电子版下载地址)...
- C++并发编程之std::async(), std::future, std::promise, std::packaged_task
- 判断一个数是偶数还是奇数
- 【POJ - 2151】Check the difficulty of problems(概率dp)
- Android N 去电流程,【私人备忘录】Android P 去电代码流程
- ARM系统中断产生流程
- 蓝牙广播错误码3_蓝牙简介—物理层(PHY)
- Windows 7 添加SSD硬盘后重启卡住正在启动
- 软件测试面试:请说一下你工作中发现的最有价值的bug?
- plsql创建、测试存储过程
- 发明与实用新型专利了解
- 纯净内存清理加速软件(Mem Reduct)
- 在Java中按字节获得字符串长度的两种方法
- 虚拟机设置共享文件夹之后看不见文件(失败合集+成功分享)
- 如何在发布宝贝页面时嵌入视频
- 几种身份认证方式的分析
- Cyclostationary Signal 循环平稳信号概念辨析