国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

漢字問題深入談

2019-11-18 15:46:37
字體:
來源:轉載
供稿:網友

  一、主題:關于java的中文問題
JAVA的中文問題比較突出,主要表現在控制面板輸出,jsp頁面輸出和數據庫訪問上。本文盡量避開字體問題,而只談編碼。通過本文,你可以了解JAVA中文問題的由來,問題的解決方法,其中提了一下用JDBC訪問數據庫的方法。

  二、問題描述:
  1)在中文W2000中文窗口編譯和運行,用的是國際版的JDK,連接的是中文W2000下的Cp936編碼的SQL SERVER數據庫:

  J:exercisedemoencodeHelloWorld>make
Created by XCompiler. PhiloSoft All Rights Reserved.
Wed May 30 02:54:45 CST 2001

  J:exercisedemoencodeHelloWorld>run
Created by XRunner. PhiloSoft All Rights Reserved.
Wed May 30 02:51:33 CST 2001
中文
[B@7bc8b569
[B@7b08b569
[B@7860b569
中文
中文
????
中文
中文
????
??
??
??

  2)假如在中文W2000的西文窗口(編碼為437)下編譯,用JAVA運行則由于無字體而無法正常顯示,假如象上面一樣在中文W2000的中文窗口運行,輸出為:

  J:exercisedemoencodeHelloWorld>run
Created by XRunner. PhiloSoft All Rights Reserved.
Wed May 30 02:51:33 CST 2001
????
[B@7bc0b66a
[B@7b04b66a
[B@7818b66a
????
????
????
????
????
????
中文
中文
????進入討論組討論。

  三)分析

  1)出現有亂碼(也就是?)。由于只出現?而沒出現小方框,說明只是編碼有問題,而不是字體問題。
在編碼中,假如從一種字符集轉換到別一種字符集,比較典型的是從GB2312轉換到ISO8859_1(即ASCII),那么很多漢字(半個漢字)是無法映射到西文字符中去的,在這種情形下,系統就把這些字符用?代替。同樣,也存在小字符集無法到大字符集的情況,具體原因這里就不詳談了。

  2)出現了中文環境編譯,中文環境運行時漢字顯示有正確也有不正確的地方,同樣,在西文環境下編譯,在中文環境下運行時也出現類似情況。這是由于自動(默認)或手工(也就new String(bytes[,encode])和bytes getBytes([encode]))轉碼的結果。

  2.1)在JAVA源文件-->JAVAC-->Class-->Java-->getBytes()-->new String()-->顯示的過程中,每一步都有編碼的轉換過程,這個過程總是存在的,只是有的時候用默認的參數進行。下面我們一步一步分析為什么出現上面的情形。

  2.2)這里是源代碼:

HelloWorld.java:
------------------------
public class HelloWorld
{
public static void main(String[] argv)
{
try
{
System.out. System.out.println("2:"+"中文".getBytes());

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 柏乡县| 五峰| 菏泽市| 云龙县| 新疆| 山东省| 饶平县| 利辛县| 松桃| 宝丰县| 临江市| 那曲县| 秭归县| 南京市| 陈巴尔虎旗| 噶尔县| 沽源县| 灵宝市| 蓬溪县| 中牟县| 安庆市| 平乡县| 麻阳| 锡林郭勒盟| 奇台县| 新泰市| 安吉县| 秦安县| 孟连| 罗田县| 信丰县| 资兴市| 喀喇| 库尔勒市| 滨州市| 井冈山市| 太白县| 庆元县| 共和县| 长泰县| 南投县|