当先锋百科网

首页 1 2 3 4 5 6 7

     我在用一个提取mp3 文件中歌曲信息的文件时,遇到一个麻烦的问题就是怎样把读到的byte转换成char ,查了很资料,最后总算解决了,写在这和大家分享:主要的问题是里面的解码器的选择

import java.nio.*;
import java.nio.charset.Charset;


private byte[] getBytes (char[] chars) {
   Charset cs = Charset.forName ("UTF-8");
   CharBuffer cb = CharBuffer.allocate (chars.length);
   cb.put (chars);
                 cb.flip ();
   ByteBuffer bb = cs.encode (cb);
  
   return bb.array();
         }

private char[] getChars (byte[] bytes) {
      Charset cs = Charset.forName ("UTF-8");
      ByteBuffer bb = ByteBuffer.allocate (bytes.length);
      bb.put (bytes);
                 bb.flip ();
       CharBuffer cb = cs.decode (bb);
  
   return cb.array();
}