java Charset的使用
1、
1 package cn.kongxh.nio4; 2 3 import java.nio.ByteBuffer ; 4 import java.nio.CharBuffer ; 5 import java.nio.charset.Charset ; 6 import java.nio.charset.CharsetDecoder ; 7 import java.nio.charset.CharsetEncoder ; 8 public class CharsetEnDeDemo{ 9 public static void main(String args[]) throws Exception { 10 Charset latin1 = Charset.forName("ISO-8859-1") ; // 只能表示的英文字符 11 CharsetEncoder encoder = latin1.newEncoder() ; // 得到编码器 12 CharsetDecoder decoder = latin1.newDecoder() ; // 得到解码器 13 // 通过CharBuffer类中的 14 // CharBuffer cb = CharBuffer.wrap("小强") ; 15 CharBuffer cb = CharBuffer.wrap("杭州的小强") ; 16 ByteBuffer buf = encoder.encode(cb) ; // 进行编码操作 17 System.out.println(decoder.decode(buf)) ; // 进行解码操作 18 } 19 }
2、
1 package cn.kongxh.nio4; 2 3 import java.nio.charset.Charset ; 4 import java.util.SortedMap ; 5 import java.util.Iterator ; 6 import java.util.Map ; 7 public class GetAllCharsetDemo{ 8 public static void main(String args[]){ 9 SortedMap<String,Charset> all = null ; 10 all = Charset.availableCharsets() ; // 得到全部可用的字符集 11 Iterator<Map.Entry<String,Charset>> iter = null ; 12 iter = all.entrySet().iterator() ; 13 while(iter.hasNext()){ 14 Map.Entry<String,Charset> me = iter.next() ; 15 System.out.println(me.getKey() + " --> " + me.getValue()) ; 16 } 17 } 18 }
总结: