Here you can find the source of decodeStringSequence(ByteBuffer bb)
protected static List<String> decodeStringSequence(ByteBuffer bb)
//package com.java2s; /* Copyright (c) 2014 Reinhard Pointner, All Rights Reserved * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. *//*ww w. ja va2 s . co m*/ import java.nio.ByteBuffer; import java.nio.charset.Charset; import java.util.ArrayList; import java.util.List; public class Main { protected static List<String> decodeStringSequence(ByteBuffer bb) { List<String> names = new ArrayList<String>(); bb.mark(); // first key starts from here while (bb.hasRemaining()) { if (bb.get() == 0) { ByteBuffer nameBuffer = (ByteBuffer) bb.duplicate() .limit(bb.position() - 1).reset(); if (nameBuffer.hasRemaining()) { names.add(decodeString(nameBuffer)); } bb.mark(); // next key starts from here } } return names; } protected static String decodeString(ByteBuffer bb) { return Charset.forName("UTF-8").decode(bb).toString(); } }