前記
應用A和B交換數據, 藉助中間件T. 數據格式: 字段分割符采用\u0005, 行分割符采用\u0001。
Q:如何理解\u0005和\u0001?
A:\u0005和\u0001是unicode值。 java中,char類型用UTF-16編碼描述一個代碼單元
知識點
1. Unicode編碼單元可以表示爲16進制值,其範圍從\u0000到\uffff。因此\u表示轉義字符, 表示一個Unicode代碼單元.
知識點
1. Unicode編碼單元可以表示爲16進制值,其範圍從\u0000到\uffff。因此\u表示轉義字符, 表示一個Unicode代碼單元.
相對於其他轉義字符,\u轉義符可以出現在字符常量或字符串的引號之外.
2. 利用System.out.println('\u0005'); 什麼也沒輸出, 這是因爲unicode編碼裏面是控制字符,不是打印字符。
Demo
2. 利用System.out.println('\u0005'); 什麼也沒輸出, 這是因爲unicode編碼裏面是控制字符,不是打印字符。
Demo
public class CharacterDemo {
public static void main(String[] args) {
char ctrlChar1 = '\u0001';
char ctrlChar5 = '\u0005';
char tab = '\u0009';
char ni = '\u4f60';
char hao = '\u597d';
System.out.println('\u0005');
System.out.println(ctrlChar1 + ctrlChar5); // 6, 說明兩個char相加, 本質是code值相加
System.out.println(ctrlChar1 + "" + ctrlChar5); //
System.out.println(tab+1); // 10
System.out.println("ha"+tab+"ha"); // ha ha
System.out.println("ha"+"\t"+"ha");// ha ha
System.out.println(ni + hao); // 43229
System.out.println(ctrlChar5 + "" + ni + hao); // 你好
}
}