Here you can find the source of encodeBigInt(OutputStream out, BigInteger x)
public static void encodeBigInt(OutputStream out, BigInteger x) throws IOException
//package com.java2s; /*//from www. j av a 2 s . c om * Copyright 2009 sirot. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * under the License. */ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; import java.math.BigInteger; public class Main { public static void encodeBigInt(OutputStream out, BigInteger x) throws IOException { byte[] value = x.toByteArray(); encodeInt(out, value.length); out.write(value); } public static byte[] encodeBigInt(BigInteger x) { try { ByteArrayOutputStream out = new ByteArrayOutputStream(); encodeBigInt(out, x); return out.toByteArray(); } catch (IOException ioe) { /* Does not happen */ throw new Error(ioe); } } public static byte[] encodeInt(long value) { byte[] tmp = new byte[4]; tmp[0] = (byte) ((value >>> 24) & 0xff); tmp[1] = (byte) ((value >>> 16) & 0xff); tmp[2] = (byte) ((value >>> 8) & 0xff); tmp[3] = (byte) (value & 0xff); return tmp; } public static void encodeInt(OutputStream out, long value) throws IOException { byte[] tmp = new byte[4]; tmp[0] = (byte) ((value >>> 24) & 0xff); tmp[1] = (byte) ((value >>> 16) & 0xff); tmp[2] = (byte) ((value >>> 8) & 0xff); tmp[3] = (byte) (value & 0xff); out.write(tmp); } }