相关疑难解决方法(0)

将小Endian文件转换为大Endian文件

我如何将liitle Endian二进制文件转换为大Endian二进制文件.我有一个二进制二进制用C写的,我在读这的Java文件,DataInputStream所读取的大端format.i也对字节缓冲区类的外观,但不知道如何使用它让我期望的结果.请帮忙.

非常感谢

java

10
推荐指数
2
解决办法
9292
查看次数

DataInputStream上的字节顺序

我有一个我想要加载的文件格式,其中包含OpenGL对象的原始数据.

一切都会好,但数据编码为小端.

是否有一个java类完成DataInputStream的确切工作,但使用小端或者我必须逐字节加载它并自己执行转换?

java io endianness

5
推荐指数
1
解决办法
3236
查看次数

读取从C#客户端发送的ObjectInputStream时出现"StreamCorruptedException:invalid stream header"

问题

我正在尝试从C#客户端向此Java Server发送protobuf消息,但我得到以下异常:

java.io.StreamCorruptedException: invalid stream header: 0A290A08 
java.io.StreamCorruptedException: invalid stream header: 0A290A08
    at java.io.ObjectInputStream.readStreamHeader(Unknown Source)
    at java.io.ObjectInputStream.<init>(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

说实话,我有点不知所措.任何帮助表示赞赏.谢谢!

  • Java服务器
    public ControllerThread(Socket s){
    this.s = s; try {

        this.objectInputStream = new ObjectInputStream(s.getInputStream());
        byte size = objectInputStream.readByte();System.out.println("Server: BYTES SIZE:" +     size);
        byte[] bytes = new byte[size];
        objectInputStream.readFully(bytes);
        AddressBook adb = AddressBook.parseFrom(bytes);
        System.out.println("Server: Addressbook:" + adb.getPersonCount());

    } catch (IOException e) { 
        System.out.println("Server: BufferedReader oder PrintWriter von ThermoClient konnte nicht erstellt werden");
        e.printStackTrace(); } 
        } }
Run Code Online (Sandbox Code Playgroud)

C#代码

public AddressBook InitializeAdressBook()
{
    Person …
Run Code Online (Sandbox Code Playgroud)

c# java stream

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×3

c# ×1

endianness ×1

io ×1

stream ×1