Java中Ascii码和中文的转换

今天在研究Java中编码的时候,看到了Java中ascii码的强大。写了一个CoderUtils.java,以后会扩展它。

 

 

[java] view plain copy
  1. package com.xingxd.study.test;  
  2.   
  3. import java.io.File;  
  4. import java.io.FileWriter;  
  5. import java.io.IOException;  
  6. import java.io.PrintWriter;  
  7.   
  8. /** 
  9.  * @date 2009-3-11 
  10.  * @author Xing,Xiudong 
  11.  * @Email:xingxiuodng[at]gmail.com 
  12.  * @index:http://blog.csdn.net/xxd851116 
  13.  */  
  14. public class CoderUtils {  
  15.   
  16.     public static char ascii2Char(int ASCII) {  
  17.         return (char) ASCII;  
  18.     }  
  19.   
  20.     public static int char2ASCII(char c) {  
  21.         return (int) c;  
  22.     }  
  23.   
  24.     public static String ascii2String(int[] ASCIIs) {  
  25.         StringBuffer sb = new StringBuffer();  
  26.         for (int i = 0; i < ASCIIs.length; i++) {  
  27.             sb.append((char) ascii2Char(ASCIIs[i]));  
  28.         }  
  29.         return sb.toString();  
  30.     }  
  31.   
  32.     public static String ascii2String(String ASCIIs) {  
  33.         String[] ASCIIss = ASCIIs.split(",");  
  34.         StringBuffer sb = new StringBuffer();  
  35.         for (int i = 0; i < ASCIIss.length; i++) {  
  36.             sb.append((char) ascii2Char(Integer.parseInt(ASCIIss[i])));  
  37.         }  
  38.         return sb.toString();  
  39.     }  
  40.   
  41.     public static int[] string2ASCII(String s) {// 字符串转换为ASCII码  
  42.         if (s == null || "".equals(s)) {  
  43.             return null;  
  44.         }  
  45.   
  46.         char[] chars = s.toCharArray();  
  47.         int[] asciiArray = new int[chars.length];  
  48.   
  49.         for (int i = 0; i < chars.length; i++) {  
  50.             asciiArray[i] = char2ASCII(chars[i]);  
  51.         }  
  52.         return asciiArray;  
  53.     }  
  54.   
  55.     public static String getIntArrayString(int[] intArray) {  
  56.         return getIntArrayString(intArray, ",");  
  57.     }  
  58.   
  59.     public static String getIntArrayString(int[] intArray, String delimiter) {  
  60.         StringBuffer sb = new StringBuffer();  
  61.         for (int i = 0; i < intArray.length; i++) {  
  62.             sb.append(intArray[i]).append(delimiter);  
  63.         }  
  64.         return sb.toString();  
  65.     }  
  66.   
  67.     public static String getASCII(int begin, int end) {  
  68.         StringBuffer sb = new StringBuffer();  
  69.         for (int i = begin; i < end; i++) {  
  70.             sb.append(i).append(":").append((char) i).append("/t");  
  71.             // sb.append((char) i).append("/t");  
  72.             if (i % 10 == 0) {  
  73.                 sb.append("/n");  
  74.             }  
  75.         }  
  76.         return sb.toString();  
  77.     }  
  78.   
  79.     public static String getCHASCII(int begin, int end) {  
  80.         return getASCII(1996840869);  
  81.     }  
  82.   
  83.     public static void showASCII(int begin, int end) {  
  84.         for (int i = begin; i < end; i++) {  
  85.             // System.out.print(i + ":" + (char) i + "/t");  
  86.             System.out.print((char) i + "/t");  
  87.             if (i % 10 == 0) {  
  88.                 System.out.println();  
  89.             }  
  90.         }  
  91.     }  
  92.   
  93.     public static void showCHASCII() {  
  94.         showASCII(1996840869);  
  95.     }  
  96.   
  97.     public static void showIntArray(int[] intArray) {  
  98.         showIntArray(intArray, ",");  
  99.     }  
  100.   
  101.     public static void showIntArray(int[] intArray, String delimiter) {  
  102.         for (int i = 0; i < intArray.length; i++) {  
  103.             System.out.print(intArray[i] + delimiter);  
  104.         }  
  105.     }  
  106.   
  107.     public static void createFile(String filePathAndName, String fileContent)  
  108.             throws IOException {  
  109.   
  110.         String filePath = filePathAndName;  
  111.         filePath = filePath.toString();  
  112.         File myFilePath = new File(filePath);  
  113.         if (!myFilePath.exists()) {  
  114.             myFilePath.createNewFile();  
  115.         }  
  116.         FileWriter resultFile = new FileWriter(myFilePath);  
  117.         PrintWriter myFile = new PrintWriter(resultFile);  
  118.         String strContent = fileContent;  
  119.         myFile.println(strContent);  
  120.         myFile.close();  
  121.         resultFile.close();  
  122.     }  
  123.   
  124.     public static void main(String[] args) throws IOException {  
  125.   
  126.         String s = "好好学习!天天向上!————笑的自然 2009年3月11日";  
  127.         showIntArray(string2ASCII(s), " ");  
  128.         System.out.println();  
  129.         System.out.println(ascii2String(string2ASCII(s)));  
  130.   
  131.         createFile("c://console_ch.txt", getCHASCII(050000));  
  132.     }  
  133.   


你可能感兴趣的:(Java中Ascii码和中文的转换)