2015-11-02 56 views
3

我想使用薩克斯來解析JSON到飛行中的protobuf消息,並希望避免爲每個響應創建字符串實例。從InputStream Chronicle字節

爲此,我需要從InputStream(從apache http實體提供)創建Bytes實例。

我挖了一段時間的來源,但無法找到辦法做到這一點......任何建議?

+0

嗨vach ,請分享一些你的代碼,沒有代碼,人們很可能會跳過你的問題。 – Jaap

+0

將做下一次,現在我有解決方案,除了問題是相當自我解釋,採取任何輸入流,並將它變成Bytes用於openhft項目... – vach

回答

3

有兩種方法可以做到這一點。

// reuse a string builder if the String cannot be pooled easily 
stringBuilder.setLength(0); 
bytes.parseUTF(stringBuilder, StopCharTesters.ALL); 

,或者您可以使用內置的字符串池

String s = bytes.parseUTF(StopCharTesters.ALL); 

這將很好地工作,如果有一個相對較小的數字可能的字符串(至少大部分時間)

+0

感謝彼得,是否有一些指南通用項目像電線或字節?我剛剛開始使用這些真棒庫,但我搞清楚測試和一般閱讀源的東西... – vach

+1

電線有基本的文檔https://github.com/OpenHFT/Chronicle-Wire但Bytes需要更多https://github.com/OpenHFT/Chronicle-Bytes我非常樂意回答問題並接受對改進文檔的請求。 –

相關問題