NetworkDataOutputStream.java

net.minecraft.server.rcon.NetworkDataOutputStream

信息

  • 全限定名:net.minecraft.server.rcon.NetworkDataOutputStream
  • 类型:public class
  • 包:net.minecraft.server.rcon
  • 源码路径:src/main/java/net/minecraft/server/rcon/NetworkDataOutputStream.java
  • 起始行号:L8
  • 职责:

    TODO

字段/常量

  • outputStream

    • 类型: ByteArrayOutputStream
    • 修饰符: private final
    • 源码定位: L9
    • 说明:

      TODO

  • dataOutputStream

    • 类型: DataOutputStream
    • 修饰符: private final
    • 源码定位: L10
    • 说明:

      TODO

内部类/嵌套类型

构造器

public NetworkDataOutputStream(int size) @ L12

  • 构造器名:NetworkDataOutputStream
  • 源码定位:L12
  • 修饰符:public

参数:

  • size: int

说明:

TODO

方法

下面的方法块按源码顺序生成。

public void writeBytes(byte[] data) @ L17

  • 方法名:writeBytes
  • 源码定位:L17
  • 返回类型:void
  • 修饰符:public

参数:

  • data: byte[]

说明:

TODO

public void writeString(String data) @ L21

  • 方法名:writeString
  • 源码定位:L21
  • 返回类型:void
  • 修饰符:public

参数:

  • data: String

说明:

TODO

public void write(int data) @ L26

  • 方法名:write
  • 源码定位:L26
  • 返回类型:void
  • 修饰符:public

参数:

  • data: int

说明:

TODO

public void writeShort(short data) @ L30

  • 方法名:writeShort
  • 源码定位:L30
  • 返回类型:void
  • 修饰符:public

参数:

  • data: short

说明:

TODO

public void writeInt(int data) @ L34

  • 方法名:writeInt
  • 源码定位:L34
  • 返回类型:void
  • 修饰符:public

参数:

  • data: int

说明:

TODO

public void writeFloat(float data) @ L38

  • 方法名:writeFloat
  • 源码定位:L38
  • 返回类型:void
  • 修饰符:public

参数:

  • data: float

说明:

TODO

public byte[] toByteArray() @ L42

  • 方法名:toByteArray
  • 源码定位:L42
  • 返回类型:byte[]
  • 修饰符:public

参数:

说明:

TODO

public void reset() @ L46

  • 方法名:reset
  • 源码定位:L46
  • 返回类型:void
  • 修饰符:public

参数:

说明:

TODO

代码

public class NetworkDataOutputStream {
    private final ByteArrayOutputStream outputStream;
    private final DataOutputStream dataOutputStream;
 
    public NetworkDataOutputStream(int size) {
        this.outputStream = new ByteArrayOutputStream(size);
        this.dataOutputStream = new DataOutputStream(this.outputStream);
    }
 
    public void writeBytes(byte[] data) throws IOException {
        this.dataOutputStream.write(data, 0, data.length);
    }
 
    public void writeString(String data) throws IOException {
        this.dataOutputStream.write(data.getBytes(StandardCharsets.UTF_8));
        this.dataOutputStream.write(0);
    }
 
    public void write(int data) throws IOException {
        this.dataOutputStream.write(data);
    }
 
    public void writeShort(short data) throws IOException {
        this.dataOutputStream.writeShort(Short.reverseBytes(data));
    }
 
    public void writeInt(int data) throws IOException {
        this.dataOutputStream.writeInt(Integer.reverseBytes(data));
    }
 
    public void writeFloat(float data) throws IOException {
        this.dataOutputStream.writeInt(Integer.reverseBytes(Float.floatToIntBits(data)));
    }
 
    public byte[] toByteArray() {
        return this.outputStream.toByteArray();
    }
 
    public void reset() {
        this.outputStream.reset();
    }
}

引用的其他类