Java examples for java.nio:ShortBuffer
Read a short string from the buffer.
/* vim:set softtabstop=3 shiftwidth=3 tabstop=3 expandtab tw=72: $Id$//from w w w.ja v a 2 s .co m BufferUtil: static methods for reading from a ByteBuffer. Copyright (C) 2003 Casey Marshall <rsdio@metastatic.org> This file is a part of Jarsync. Jarsync is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Jarsync is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Jarsync; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ //package com.java2s; import java.nio.BufferUnderflowException; import java.nio.ByteBuffer; public class Main { /** * Read a short string from the buffer. * * @param in The input buffer. * @param maxLength The maximum number of bytes to read, or 0 if not * limited. * @return The string. * @throws BufferUnderflowException If there are not enough * bytes available in the buffer. */ public static String getShortString(ByteBuffer in) { int l = in.get() & 0xFF; byte[] b = new byte[l]; try { in.get(b); return new String(b, "ISO-8859-1"); } catch (BufferUnderflowException bue) { in.position(in.position() - 1); throw bue; } catch (java.io.UnsupportedEncodingException shouldNotHappen) { } return null; } }