`

Ascii与native之间转换

 
阅读更多
package com.test;

public class AsciiToString {
	public static void main(String argv[]) {
		AsciiToString tt = new AsciiToString();
		String str1 = tt.native2ascii("如果世界末日地球没毁灭,那么我们恋爱吧。");
		System.out.println("native2ascii:"+str1);
		String str2 = tt.ascii2native(str1);
		System.out.println("ascii2native:"+str2);
	}

	public String native2ascii(String str) {
		char ac[] = str.toCharArray();
		int len = ac.length;
		StringBuffer out = new StringBuffer();
		for (int i = 0; i < len; i++)
			if (ac[i] > '\177') {
				out.append(new char[] { 92, 117 });
				String s1 = Integer.toHexString(ac[i]);
				StringBuffer stringbuffer = new StringBuffer(s1);
				stringbuffer.reverse();
				int l = 4 - stringbuffer.length();
				for (int i1 = 0; i1 < l; i1++)
					stringbuffer.append('0');
				for (int j1 = 0; j1 < 4; j1++)
					out.append(stringbuffer.charAt(3 - j1));
			} else {
				out.append(ac[i]);
			}
		return out.toString();
	}

	public String ascii2native(String str) {
		char[] ac1 = str.toCharArray();
		int k = ac1.length;
		StringBuffer sb = new StringBuffer();
		int k1 = 0;
		do {
			if (k1 >= k)
				break;
			char c = ac1[k1++];
			if (c != '\\' || k - k1 < 5) {
				sb.append(c);
				continue;
			}
			c = ac1[k1++];
			if (c != 'u') {
				sb.append('\\');
				sb.append(c);
			} else {
				char c1 = '\0';
				boolean flag2 = true;
				try {
					c1 = (char) Integer.parseInt(new String(ac1, k1, 4), 16);
				} catch (NumberFormatException numberformatexception) {
					flag2 = false;
				}
				if (flag2) {
					sb.append(c1);
					k1 += 4;
				} else {
					sb.append('\\');
					sb.append(c);
				}
			}
		} while (true);
		return sb.toString();
	}
}

 

分享到:
评论

相关推荐

    易语言汉字和ASCII码之间的转换

    易语言作为一款中国本土的编程语言,提供了解决汉字与ASCII码之间转换的功能。本节将详细探讨易语言中的汉字与ASCII码转换的原理和实现方式。 首先,我们需要了解ASCII码。ASCII(American Standard Code for ...

    易语言native和ascii转换 易语言编码转换

    易语言native和ascii转换,易语言编码转换,属于进阶教程源码,编码转换

    Native2Ascii互转换工具

    用C#编写的Native和Ascii转换工具,这只是用几分钟写的初版. "设置"按钮还没有想好添加什么功能. 目前程序是置顶的,窗体大小可以改变. 现在只有文本框内容转换,后续会添加文件转换和批量文件转换. 有什么建议可以写在...

    native2ascii资源文件编码转换命令

    native2ascii资源文件编码转换命令

    ascii2native-maven-plugin:将 ASCII 编码的文本文件转换为本机

    将 ASCII 编码的文本文件转换为本机。 输出示例 [INFO] --- ascii2native-maven-plugin:1.4-SNAPSHOT:ascii2native (ascii2native) @ express-api --- [INFO] Ascii2Native: Process folder: /home/aleks/projects...

    native2ascii简介

    `native2ascii` 是Sun Java SDK中的一个实用工具,主要用于将包含非ASCII字符的文本文件(如`.txt`、`.ini`、`.properties`、`.java`等)转换为Unicode编码格式。在软件开发过程中,特别是在处理国际化(i18n)需求...

    native2ascii图形工具

    2. **反向转换**:`native2ascii`不仅支持ASCII到Unicode的转换,也支持Unicode到ASCII的转换。如果你有一个Unicode编码的文件`unicode.txt`,想将其转换回ISO-8859-1编码,可以这样操作: ``` native2ascii -...

    native2ascii.exe

    在Java平台上,由于Java源代码和资源文件默认使用ASCII编码,因此当遇到非ASCII字符时,就需要使用像`native2ascii.exe`这样的工具进行转换。 在描述中提到,`native2ascii.exe`依赖于`java.dll`动态链接库和其他...

    native和ascii转换.rar

    反之,从ASCII转换到"Native"则涉及识别目标操作系统或用户预期的字符集,并将ASCII数据转换为相应的编码形式。 易语言是一种中国开发的编程语言,它提供了处理字符编码的函数和方法。在"native和ascii转换易语言...

    易语言源码native和ascii转换易语言源码.rar

    易语言源码native和ascii转换易语言源码.rar 易语言源码native和ascii转换易语言源码.rar 易语言源码native和ascii转换易语言源码.rar 易语言源码native和ascii转换易语言源码.rar 易语言源码native和ascii转换...

    native2ascii工具

    native2ascii工具,不需要在命令行的转换了

    native2ascii 命令的使用

    `native2ascii`命令是Java开发中用于处理非ASCII字符的一种工具,主要用于将含有非英文字符(如中文、日文等)的文本文件转换为Unicode编码的ASCII格式,以便Java虚拟机(JVM)能够正确识别和处理。这个命令对于国际...

    易语言native和ascii转换易语言源码.rar

    易语言native和ascii转换易语言源码.rar 易语言native和ascii转换易语言源码.rar 易语言native和ascii转换易语言源码.rar 易语言native和ascii转换易语言源码.rar 易语言native和ascii转换易语言源码.rar ...

    native2ascii_local

    通过在线native2ascii转换而成的html可以在本地直接使用,将需要的转换成unicode

    native2ascii

    当这些文件需要包含中文或其他非ASCII字符时,就需要用到`native2ascii`工具进行编码转换。 `native2ascii`工具能够将非ASCII字符转换为`\uXXXX`的Unicode转义序列,使得Java虚拟机(JVM)能够正确解析并显示这些非...

    native2ascii图形界面工具

    在Java开发中,由于Java源代码只支持ASCII字符集,但某些资源文件(如属性文件)可能包含本地化的非ASCII字符,这时就需要使用`native2ascii`工具将这些字符转换为可被Java理解的转义序列。 描述中的“简单易用”...

Global site tag (gtag.js) - Google Analytics