Here you can find the source of read_UnsignedByte(RandomAccessFile raf)
Parameter | Description |
---|---|
raf | the file where the 4 Bytes are read |
private static short read_UnsignedByte(RandomAccessFile raf)
//package com.java2s; /******************************************************************************* * Copyright 2016 CNES - CENTRE NATIONAL d'ETUDES SPATIALES * * This file is part of JSave./*from w w w . ja va 2 s.c om*/ * * JSave 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 3 of the License, or * (at your option) any later version. * * JSave 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 JSave. If not, see <http://www.gnu.org/licenses/>. ******************************************************************************/ import java.io.IOException; import java.io.RandomAccessFile; import java.nio.ByteBuffer; public class Main { /** * Reads a Byte (-128 to 127). * * @param raf the file where the 4 Bytes are read * @return a Byte */ private static short read_UnsignedByte(RandomAccessFile raf) { byte[] data = new byte[1]; byte byteData = -1; try { raf.read(data); ByteBuffer bb = ByteBuffer.allocate(data.length); bb.put(data); return getUnsignedByte(bb); } catch (IOException e) { } return byteData; } /** * Returns an unsigned byte. * * Since java does not provide unsigned primitive types, each unsigned * value read from the buffer is promoted up to the next bigger primitive * data type : getUnsignedByte() returns a short. * * @param bb the array of bytes in the buffer * @return an unsigned byte as short */ public static short getUnsignedByte(ByteBuffer bb) { return ((short) (bb.get(0) & 0xff)); } }