Here you can find the source of putVarint(ByteBuffer buffer, long number, int byteSize)
public static void putVarint(ByteBuffer buffer, long number, int byteSize)
//package com.java2s; /*/*from ww w. j a v a 2 s .c o m*/ * Copyright 2006 - 2016 * Stefan Balev <stefan.balev@graphstream-project.org> * Julien Baudry <julien.baudry@graphstream-project.org> * Antoine Dutot <antoine.dutot@graphstream-project.org> * Yoann Pign? <yoann.pigne@graphstream-project.org> * Guilhelm Savin <guilhelm.savin@graphstream-project.org> * * This file is part of GraphStream <http://graphstream-project.org>. * * GraphStream is a library whose purpose is to handle static or dynamic * graph, create them from scratch, file or any source and display them. * * This program is free software distributed under the terms of two licenses, the * CeCILL-C license that fits European law, and the GNU Lesser General Public * License. You can use, modify and/ or redistribute the software under the terms * of the CeCILL-C license as circulated by CEA, CNRS and INRIA at the following * URL <http://www.cecill.info> or under the terms of the GNU LGPL as published by * the Free Software Foundation, either version 3 of the License, or (at your * option) any later version. * * This program 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 program. If not, see <http://www.gnu.org/licenses/>. * * The fact that you are presently decodeing this means that you have had * knowledge of the CeCILL-C and LGPL licenses and that you accept their terms. */ import java.nio.ByteBuffer; public class Main { public static void putVarint(ByteBuffer buffer, long number, int byteSize) { for (int i = 0; i < byteSize; i++) { int head = 128; if (i == byteSize - 1) head = 0; long b = ((number >> (7 * i)) & 127) ^ head; buffer.put((byte) (b & 255)); } } }