unicode轉中文java
① java如何將unicode轉為中文。
importorg.apache.commons.lang.StringEscapeUtils;
publicclassrectangle{
publicstaticvoidmain(String[]arge){
Strings=StringEscapeUtils.unescapeHtml("振荡器类型");
System.out.println(s);
}
}
你需要額外的工具:
簡單的辦法,去下載commons-lang-2.3.jar,然後加入到classpath里。
或者,如果用manve 加上:
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.3</version>
</dependency>
讓maven去自動下載。
② java 中如何將unicode字元集轉換成漢字
我這eclipse自動把它轉中局鎮攜旅猜文了。。你看下這個桐伏。
http://blog.csdn.net/shigang_xing/article/details/8263728
③ java讀取含有unicode編碼的文件內容,並轉換成漢字
可以通過BufferedReader 流的形式進行流緩存,之後通過readLine方法獲取到緩存的內容。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此時獲取到的bre就是整個文件的緩存流
while ((str = bre.readLine())!= null) // 判斷最後一行不存在,為空結束循環
{
System.out.println(str);//原樣輸出讀到的內容(unicode會自動轉換為中文的)
};
備註:unicode不需要轉換的,直接輸出即可,會自動變成中文,如:
System.out.println("\u0061\u0062\u6c49\u5b57");
結果就是:ab漢字。
④ JAVA程序,從鍵盤輸入漢字,並將漢子轉換為相應的unicode編碼,怎麼寫啊
上代碼:
importjava.util.Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
System.out.println("請輸入漢字:");
Stringinput=sc.nextLine();
塌漏if(input.length()==0){
System.out.println("輸入錯誤");
return;
}
System.out.println("漢字轉unicode結果:");
char[]chars=input.toCharArray();
for(inti=0;i<chars.length;i++){
Stringunicode=Integer.toHexString(chars[i]);
if(unicode.length()<=2){
團哪爛//不足四位前面加0補齊
緩激unicode="00"+unicode;
}
unicode="\u"+unicode;
System.out.println(chars[i]+":"+unicode);
}
}
}
⑤ Java使用百度API store返回JSON數據為unicode編碼,怎麼轉化為中文
String str = "\u8eab\u4efd\u8bc1\凱虛u53f7\u7801\u4e0d\型孫卜卜穗u5408\u6cd5!";
byte[] bt = str.getBytes("utf-8");
String ret = new String(bt, "utf-8");
System.out.println(ret);
⑥ 如何把properties中的所有unicode編碼轉為漢字
在命令行界面用native2ascii工具
1.將漢字轉為Unicode:
C:\Program Files\Java\jdk1.5.0_04\bin>native2ascii
測試
\u6d4b\u8bd5
2.將Unicode轉換為漢字:
C:\Program Files\Java\jdk1.5.0_04\bin>native2ascii -reverse
\u6d4b\u8bd5
測試
java 自帶的一個native2ascii.exe是一個很好的轉碼工具,在bin目錄下。如果你的properties中有漢字,需要轉成unicode . 則把含有漢字的properties拷貝到bin 目錄下, 然後在cmd裡面進入bin目錄,輸入:native2ascii -encoding utf-8 Language-ext_zh_CN.properties.native Language-ext_zh_CN.properties就ok了。Language-ext_zh_CN.properties是轉碼後的文件。
在做Java開發的時候,常常會出現一些亂碼,或者無法正確識別或讀取的文件,比如常見的validator驗 證用的消息資源(properties)文件就需要進行Unicode重新編碼。原因是java默認的編碼方式為Unicode,而我們的計算機系統編碼 常常是GBK等編碼。需要將系統的編碼轉換為java正確識別的編碼問題消唯就解決了。
1、native2ascii簡介:native2ascii 是sun java sdk提供的一個工具。用來將別的文本類文件(比如*.txt,*.ini,*.properties,*.java等等)編碼轉為Unicode編碼。 為什麼要進行轉碼,原因在於程序的國際化。Unicode編碼的定義:Unicode(統一碼、萬國碼、單一碼)是一種在計算機上使用的字元編碼。它為每 種語言中的每個字元設定了統一並且唯一的二進制編碼,以滿足跨語言、跨平台進行文本轉換、處理的要求。1990年開始研發,1994年正式公布。隨著計算 機工作能力的增強,Unicode也在面世以來的十多年裡得到普及。(聲明:Unicode編碼定義來自互聯網)。
2、獲取native2ascii:安裝了jdk後,假如你是在windows上安裝,那麼在jdk的安裝目錄下,會有一個bin目錄,察神其中native2ascii.exe正是。
3、native2ascii的命令行的命名格式:
native2ascii -[options] [inputfile [outputfile]]
說明:
-[options]:表示命令開關,有兩個選項可供選擇
-reverse:將Unicode編碼轉為本地或者指定編碼,不指定編碼情況下,將轉為本地編碼。
-encoding encoding_name:轉換為指定編碼,encoding_name為編碼名稱。
[inputfile [outputfile]]
inputfile:表示輸入文件全名。
outputfile:輸出文件名。如果缺少此參數,將輸出到控制台。
4、最佳實踐:首先將JDK的bin目錄加入系統變數path。在盤下建立一個test目錄,在test目錄里建立一個zh.txt文件,文件內容為:「熔岩」,打開「命令行提示符」,並進入C:\test目錄下。下面就可以按照說明一步一步來操拿沒培作,注意觀察其中編碼的變化。
A:將zh.txt轉換為Unicode編碼,輸出文件到u.txt
native2ascii zh.txt u.txt
打開u.txt,內容為「\u7194\u5ca9」。
B:將zh.txt轉換為Unicode編碼,輸出到控制台
C:\test>native2ascii zh.txt
\u7194\u5ca9
可以看到,控制台輸出了「\u7194\u5ca9」。
C:將zh.txt轉換為ISO8859-1編碼,輸出文件到i.txt
native2ascii -encoding ISO8859-1 zh.txt i.txt
打開i.txt文件,內容為「\u00c8\u00db\u00d1\u00d2」。
D:將u.txt轉換為本地編碼,輸出到文件u_nv.txt
native2ascii -reverse u.txt u_nv.txt
打開u_nv.txt文件,內容為「熔岩」。
E:將u.txt轉換為本地編碼,輸出到控制台
C:\test>native2ascii -reverse u.txt
熔岩
可以看到,控制台輸出了「熔岩」。
F:將i.txt轉換為本地編碼,輸出到i_nv.txt
native2ascii -reverse i.txt i_nv.txt
打開i_nv.txt文件,內容為「\u00c8\u00db\u00d1\u00d2」。發現轉碼前後完全一樣的。也就是說,等於沒有轉,或者說思想糊塗,對命名沒有理解。。
G:將i.txt轉換為GBK編碼,輸出到i_gbk.txt
native2ascii -reverse -encoding GBK i.txt i_gbk.txt
打開i_gbk.txt文件,內容為「\u00c8\u00db\u00d1\u00d2」。發現轉碼前後完全一樣的。也就是說,等於沒有轉,或者說思想糊塗,對命名沒有理解。
H:將u_nv.txt轉碼到本地編碼GBK,輸出到控制台
C:\test>native2ascii -reverse -encoding ISO8859-1 i.txt
熔岩
從這個結果看,目標達到到了,編碼i.txt為ISO8859-1,轉為本地編碼後內容為「熔岩」。從這里應該意識到,native2ascii -reverse命令中-encoding指定的編碼為源文件的編碼格式。而在native2ascii 命令中-encoding指定的編碼為(生成的)目標文件的編碼格式。這一點非常的重要!切記!!
繼續探索,新建文件12a.txt,內容「12axyz」。看看純字母數字的編碼又如何。
I:將純字母數字的文本文件12a.txt轉換為Unicode編碼
native2ascii 12a.txt 12a_nv.txt
打開12a_nv.txt文件,內容為「12axyz」。
繼續測試,轉為ISO8859-1編碼看看
C:\test>native2ascii -encoding ISO8859-1 12a.txt
12axyz
結果還是沒有轉碼。
從結果可以得出結論:對於純數字和字母的文本類型件,轉碼前後的內容是一樣的。
⑦ 用java如何把unicode碼轉成漢字
Java中字元和字元串都採用的是Unicode編碼;漢字能夠直接表示;不需要轉換
可以測試一下
public
class
Unicode
2Ch
z
{
public
static
void
main(String[]
args)
{
System.out.print(cc);}}直接輸出:保
⑧ java怎麼把漢字轉化成unicode編碼
中文轉換成Unicode編碼和Unicode編碼轉換成中文
importjava.util.Properties;
publicclassTest{
publicstaticvoidmain(String[]args){
Strings="簡介";
Stringtt=gbEncoding(s);//Stringtt1="你好";
System.out.println(decodeUnicode("\u7b80\u4ecb"));//System.out.println(decodeUnicode(tt1));
System.out.println(HTMLDecoder.decode("中國"));
Strings1="u7b80u4ecb";
System.out.println(s.indexOf("\"));
}
publicstaticStringgbEncoding(finalStringgbString){
char[]utfBytes=gbString.toCharArray();
StringunicodeBytes="";
for(intbyteIndex=0;byteIndex<utfBytes.length;byteIndex++){
StringhexB=Integer.toHexString(utfBytes[byteIndex]);
if(hexB.length()<=2){
hexB="00"+hexB;
}
unicodeBytes=unicodeBytes+"\u"+hexB;
}
System.out.println("unicodeBytesis:"+unicodeBytes);
returnunicodeBytes;}
(finalStringdataStr){
intstart=0;
intend=0;
finalStringBufferbuffer=newStringBuffer();
while(start>-1){
end=dataStr.indexOf("\u",start+2);
StringcharStr="";
if(end==-1){
charStr=dataStr.substring(start+2,dataStr.length());
}else{
charStr=dataStr.substring(start+2,end);
}
charletter=(char)Integer.parseInt(charStr,16);//16進制parse整形字元串。
buffer.append(newCharacter(letter).toString());
start=end;
}
returnbuffer.toString();
}}
}
}
}
⑨ java 將字元串中含有unicode 轉成中文!
publicclassConvert
{
(Stringasciicode)
{
String[]asciis=asciicode.split("\\u");
StringnativeValue=asciis[0];
try
{
for(inti=1;i<asciis.length;i++)
{
Stringcode=asciis[i];
nativeValue+=(char)歷余Integer.parseInt(code.substring(0,4),16);
if(code.length()>4)
{
nativeValue+=code.substring(4,code.length());
}
}
}
catch寬腔(NumberFormatExceptione)
{
returnasciicode;
}
returnnativeValue;
}
publicstaticvoidmain(String[]args)
{
Stringstr=""JWHQK_JWQC":"""肢巧滾;
Stringresult=ascii2native(str);
System.out.println(result);
}
}
⑩ 編寫JAVA程序輸出中文字的unicode編碼
我寫的,你試試,你可以把它改寫成循環的,可以一直把字元的Unicode輸出,完善後發給我哈:
import java.io.*;
public class FindUnicode {
public static void main(String[] args) throws IOException{
InputStreamReader read = new InputStreamReader (System.in);
int ch = read.read();
System.out.print("\\u"+Integer.toHexString(ch));
read.close();
}
}