今天就在開發過程中遇到的問題,給大家分享一下將ASCII碼轉化爲中文顯示的例子。
/**
* ASCII轉換爲字符串
*/
public static void transAscii2Chinese() throws UnsupportedEncodingException {
// ASCII碼
String string = "25226 32593 32447 21644 30005 28304 32447 36208 22909 32447 36335 65292 22914 19979 22270 25152 31034";
// 按照空格(Space按鈕)和製表鍵(Tab按鈕 )進行拆分,無論中間有多少個空格
String[] str = string.split("\\s+");
System.out.println("***********************************ASCII---->中文***********************************");
String ch = "";
for (int i = 0; i < str.length; i++) {
ch += (char) Integer.parseInt(str[i]);
}
System.out.println("轉化後的中文爲: " + ch);
}
在這裏提示一下split如何按空白、一個空格、多個空格或者製表符拆分:
1. String[] str = string.split(" "); 括號中有一個空格,表示按照一個空格拆分。
2. String[] str = string.split(" + "); 括號中的加號前後都有一個空格,表示按照多個空格拆分。
3. String[] str = string.split("\\s+"); 加號後面沒有空格表示按照製表符或者多個空格拆分。
以上基本就是簡單實現ASCII轉化爲中文了。若後端需要將ASCII格式的HTML文件轉化爲中文返回給前端該如何辦了?
例如,有這麼樣的一個頁面:
假設文本爲:
、如果是玻璃墙面,直接
把底座黏在玻璃上就可以
使用,如果是钻墙,需要
安装一个的明线暗线盒子
,安装步骤类似,把考勤
机底座先固定在的盒子上
,然后再把考勤机固定在
底座上。
這種情況又該如何轉化爲中文顯示了,此時就需要用到Apache的一個工具。在Maven中加入依賴。
<!-- https://mvnrepository.com/artifact/org.apache.commons/org.apache.commons.lang -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>org.apache.commons.lang</artifactId>
<version>2.4.0</version>
</dependency>
轉化代碼:
import org.apache.commons.lang.StringEscapeUtils;
/**
* 描述: 利用Apache工轉化ASCII編碼文件爲中文
*
* @since 2019年11月13日 下午7:11:07
* @author
*/
public class ASCIITrans {
public static void main(String[] arg) {
//轉化示例字符串
String str = "、如果是玻璃墙面,直接把底座黏在玻璃上就可以使用,如果是钻墙,需要安装一个86的明线/暗线盒子,安装步骤类似,把考勤机底座先固定在86的盒子上,然后再把考勤机固定在底座上。";
//調用組件方法,執行轉化
String s = StringEscapeUtils.unescapeHtml(str);
//轉化結果
System.out.println(s);
}
}
運行圖示: