Java tutorial
//package com.java2s; /** * Copyright (C) 2007 Sly Technologies, Inc. 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. You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ import java.nio.ByteBuffer; import java.nio.ByteOrder; public class Main { public static ByteBuffer copy(ByteBuffer buffer) { final int length = buffer.limit() - buffer.position(); final ByteOrder o = buffer.order(); final ByteBuffer r = ByteBuffer.allocate(length); r.order(o); r.put(buffer); r.clear(); // Reset position and limit after the put() return r; } }