`

从ByteBuffer中获取基本类型

    博客分类:
  • NIO
阅读更多
我们可以从ByteBuffer中产生出不同类型值的方法
 
public class Test{
       public static final int BSIZE=1024;
       public static void main()
	{
            ByteBuffer bb=ByteBuffer.allocate(BSIZE);
            int i=0;
            while(i++<bb.limit())
	       if(bb.get()!=0)
                   System.out.print("nozero");
               System.out.println("i ="+i);
               bb.rewind();
               bb.asShortBuffer().put((short)471142);
               System.out.print(bb.getShort());
               bb.rewind();
               bb.asIntBuffer().put(9947142);
               System.out.print(bb.getInt());
               bb.rewind();
               bb.asLongBuffer().put(99471142);
               System.out.print(bb.getLong());
               bb.rewind();
               bb.asFloatBuffer().put(99471142);
               System.out.print(bb.getFloat());
               bb.rewind();
               bb.asDoubleBuffer().put(99471142);
               System.out.print(bb.getDouble());
               bb.rewind();
         				      
                               
	}

}
分享到:
评论

相关推荐

    protobuf+long+bytebuffer

    从网络或者存储中获取到protobuf编码的二进制数据后,可以创建一个`ByteBuffer`实例,然后调用protobuf编译器生成的类的解析方法,传入`ByteBuffer`实例进行解码。`ByteBuffer`会根据protobuf编码规则正确地读取和...

    Android在JNI中使用ByteBuffer的方法

    ByteBuffer是一个固定大小的列表,用于存储基本数据类型,如字节、短整型、整型、长整型等。它有四个核心属性: 1. mark:初始值为-1,用于标记当前位置,方便后续回溯。 2. position:初始值为0,表示当前读写的...

    java基本类型与byte数组互相转换.rar

    然而,在某些场景下,我们可能需要将这些基本类型的数据转换为字节数组(byte[]),或者从字节数组中恢复这些基本类型的数据。这在处理网络传输、文件存储或序列化时尤其常见。 转换的基本过程可以分为两个主要步骤...

    ByteBuffer-scanner-Memor-Hex:出色地

    Scanner则是一个用于输入处理的类,可以读取基本类型的值和字符串。而“Memor-Hex”可能是这个项目的特色部分,可能涉及到内存管理和十六进制(Hex)数据的处理。 在这个项目中,ByteBuffer可能是作为基础工具来...

    STDF file analysis with java

    在具体的Java实现中,可以使用java.nio相关的类和方法来高效地处理这种二进制文件,例如使用ByteBuffer类来读取二进制数据,并利用其get方法来获取不同类型的数据。读取和解析数据时,要注意移动ByteBuffer中的文件...

    Java中解析dex文件

    在解析过程中,可能会用到如`ByteBuffer`、`DataInputStream`等Java I/O和二进制处理类。需要注意的是,Dalvik字节码遵循特定的指令集,如Opcode,这需要对Dalvik虚拟机的指令集有深入理解。 此外,Android SDK提供...

    Java程序读取服务器端数据文件的解决方法及比较

    - 如果不是数据间隔标志,则采用ByteBuffer类对数组中的字节进行倒序处理,生成一个临时Float对象。 - 将临时对象存入相应的数据数组中。 3. **预处理过的二进制文件读取方法**: - 从标准输入流中读取四个字节...

    利用JAVA对STDF文件进行分析.pdf

    3. **解析数据**:通过使用`ByteBuffer`读取文件内容,逐个获取每个记录的头信息(数据长度、数据类型和子类型),然后实例化对应的记录类,根据数据长度和类型读取和解析实际数据。例如,`FARRecord`类中,`cpuType...

    学习笔记 java\CoreJava笔记\CoreJava_day21

    `ByteBuffer`是NIO中用于存储单个基本类型的缓冲区,它可以用来存储`byte`类型的数据。`ByteBuffer`支持两种模式:直接缓冲区和非直接缓冲区。 - **非直接缓冲区**:由Java堆内存分配空间,通过`ByteBuffer....

    Java-NIO-系列教程

    以下是一个简单的使用 `FileChannel` 从文件中读取数据到 `ByteBuffer` 中的示例: ```java RandomAccessFile aFile = new RandomAccessFile("data/nio-data.txt", "rw"); FileChannel inChannel = aFile....

    Java NIO系列教材1

    Java NIO提供了七种Buffer类,分别对应于基本数据类型:ByteBuffer、CharBuffer、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffer和ShortBuffer。在实际操作中,我们需要将数据先读入Buffer,再从Buffer中读取,...

    java8中NIO缓冲区(Buffer)的数据存储详解

    Java8 中的 NIO 缓冲区(Buffer)提供了多种类型的缓冲区,包括 ByteBuffer、CharBuffer、ShortBuffer、IntBuffer、LongBuffer、FloatBuffer、DoubleBuffer 等,每种类型的缓冲区都有其特定的用途和使用方法。...

    NIO学习系列:核心概念及基本读写

    缓冲区有多种类型,如`ByteBuffer`、`CharBuffer`、`IntBuffer`等,对应不同的数据类型。 3. **选择器(Selector)**:选择器允许单个线程同时监控多个通道,从而实现多路复用。通过注册感兴趣的通道并调用`select...

    NIO学习系列:缓冲区更多特性及分散/聚集IO

    例如,`FileChannel.read(ByteBuffer[] bufs)`方法可以从文件中读取数据到一个缓冲区数组中,数据会被分散到各个缓冲区。 - **聚集写入(Gather Write)**:相反,聚集写入允许我们将多个缓冲区的数据聚集到一起...

    nio.rar_FastCopyFile.java_NIO_UseFloatBuffer.java_java nio_文件锁

    `FastCopyFile.java`可能会展示如何创建FileChannel,从源文件读取数据到一个ByteBuffer,然后将该缓冲区的数据写入目标文件的FileChannel,以此实现高效的文件复制。 接下来,我们来看`UseFloatBuffer.java`。...

    以太帧的解析程序JAVA实现

    以太帧是网络通信中数据链路层的基本传输单元,主要在局域网(LAN)环境中使用。在Java中实现以太帧的解析程序,我们需要理解以太帧的结构、协议标准以及如何用Java处理原始的二进制数据。本文将深入探讨这个主题,...

    java api doc 中文文档

    10. **泛型**:从Java 5开始引入,提高了代码的类型安全性,允许在类、接口和方法中定义类型参数。 11. **枚举类型**:Java 5新增的特性,提供了一种安全的常量表示方式,可以避免硬编码和类型转换问题。 12. **...

    java读取纯真IP数据库QQwry.dat的源代码--获取ip所在地区

    在Java中,我们需要使用`RandomAccessFile`类来处理这种类型的文件,因为它支持随机访问和读取文件中的特定位置。 以下是一个简单的Java源代码示例,演示如何读取QQwry.dat并获取IP地址所在的地区: ```java ...

    java nio教程pdf

    - 缓冲区的类型包括ByteBuffer、CharBuffer、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffer和ShortBuffer,分别对应不同的基本数据类型。 - 缓冲区拥有容量(capacity)、限制(limit)和位置(position)三...

Global site tag (gtag.js) - Google Analytics