mina iobufferの文字変換について

2052 ワード

/**
*  byte[] string  
* @param butBuffer
*/
public static String byteToString(byte [] b)
{
       StringBuffer stringBuffer = new StringBuffer();
       for (int i = 0; i < b.length; i++)
       {
           stringBuffer.append((char) b [i]);
       }
       return stringBuffer.toString();
}

/**
*  bytebuffer string  
* @param str
*/
public static IoBuffer stringToIoBuffer(String str)
{

       byte bt[] = str.getBytes();

       IoBuffer ioBuffer = IoBuffer.allocate(bt.length);
       ioBuffer.put(bt, 0, bt.length);
       ioBuffer.flip();
       return ioBuffer;
}
/**
*  IoBuffer string  
* @param str
*/
public static IoBuffer byteToIoBuffer(byte [] bt,int length)
{

       IoBuffer ioBuffer = IoBuffer.allocate(length);
       ioBuffer.put(bt, 0, length);
       ioBuffer.flip();
       return ioBuffer;
}
/**
*  IoBuffer byte  
* @param str
*/
public static byte [] ioBufferToByte(Object message)
{
      if (!(message instanceof IoBuffer))
      {
          return null;
      }
      IoBuffer ioBuffer = (IoBuffer)message;
      byte[] b = new byte[ioBuffer.limit()];
      ioBuffer.get(b);
      return b;
}
/**
*  IoBuffer string  
* @param butBuffer
*/
public static String ioBufferToString(Object message)
{
      if (!(message instanceof IoBuffer))
      {
        return "";
      }
      IoBuffer ioBuffer = (IoBuffer) message;
      byte[] b = new byte [ioBuffer.limit()];
      ioBuffer.get(b);
      StringBuffer stringBuffer = new StringBuffer();

      for (int i = 0; i < b.length; i++)
      {

       stringBuffer.append((char) b [i]);
      }
       return stringBuffer.toString();
}