繁体   English   中英

如何在Java中从InputStream构造TTransport对象

[英]How can I construct an TTransport object from InputStream in Java

我想将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是一个抽象类,它具有一些子类,但是我不确定应该选择哪个子类,因为它们中没有一个包含采用inputstream参数的构造方法。 谁能帮我? 提前致谢。

TIOStreamTransport具有带有InputStream参数的构造函数。

您可能也对TMemoryInputTransportTFileTransport

对于某些人,我已经解决了Java中的问题,如下所示:

TTransport transport;
transport = new TMemoryInputTransport(byte_data);
TBinaryProtocol tbp = new TBinaryProtocol(transport);
StreamItem si = new StreamItem();
si.read(tbp);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM