2015-09-28 23 views

Trả lời

0

Bạn sẽ cần phải gửi gthe chiều dài của chuỗi, hoặc đóng kết nối để bạn biết nơi byte cuối cùng là.

Lớp học có khả năng nhất để giúp bạn là DeflatorInputStream mà bạn sử dụng khi các byte đã được đọc. Đây là một wrapper trần cho lớp zlib. Tôi đã không thử nghiệm nó hoạt động với python nhưng nó là lựa chọn tốt nhất của bạn.

Bạn có thể thử các loại nén khác như Snappy hoặc LZ4 có hỗ trợ nền tảng chéo.

0

Tôi cho rằng bạn đã biết phần mạng trên Java. Bạn có thể sử dụng lớp học Inflater để nhận chuỗi của mình như trong javadocs

// Decompress the bytes 
Inflater decompresser = new Inflater(); 
decompresser.setInput(output, 0, compressedDataLength); 
byte[] result = new byte[100]; 
int resultLength = decompresser.inflate(result); 
decompresser.end(); 
//Then create string in java i assumed you are using python 2 and string is ASCII 
String str = new String(result,"US-ASCII") 
Các vấn đề liên quan