我想将一段python代码重写为java。 Python代码如下:
transport = StringIO(thrifts_data)
transport.seek(0)
transport = TTransport.TBufferedTransport(transport)
protocol = TBinaryProtocol.TBinaryProtocol(transport)
....
doc = StreamItem()
doc.read(protocol)
在上面的代码中,thrifts_data是从文件读取的二进制流。 现在我需要在java中重写它,我在网上搜索过,但没有找到任何有用的东西。 在java中,TTransport是一个抽象类,它有一些子类,但我不确定我应该选择哪个,因为它们中没有一个包含一个带有输入流参数的构造方法。 谁能帮我?提前谢谢。
答案 0 :(得分:0)
TIOStreamTransport
有一个带InputStream
参数的构造函数。
您可能也对TMemoryInputTransport
和TFileTransport
感兴趣。
答案 1 :(得分:0)
TTransport transport;
transport = new TMemoryInputTransport(byte_data);
TBinaryProtocol tbp = new TBinaryProtocol(transport);
StreamItem si = new StreamItem();
si.read(tbp);