![](/img/trans.png)
[英]How to convert from Avro GenericRecord to JSON without adding schema name?
[英]Java How to convert a GenericRecord to a json string?
我正在嘗試將GenericRecord轉換為json字符串,以便將其傳遞給類似JSONObject的對象。 我正在考慮使用JsonEncoder來做到這一點。 現在我有類似的東西:
ByteArrayOutputStream out = new ByteArrayOutputStream();
JsonEncoder jsonEncoder = new JsonEncoder(genericRecord.getSchema(),out);
但是,這給了我一個錯誤:
error: incompatible types: ByteArrayOutputStream cannot be converted to JsonGenerator
根據JsonEncoder的源代碼,它應該具有接受輸出流的構造,因此我不確定為什么會出現此錯誤。 有人可以建議如何解決該問題嗎? 也歡迎任何其他有關如何將GenericRecord轉換為json字符串的建議。 謝謝!
如果是此JsonEncoder
,則沒有任何公共構造函數。 它說“使用EncoderFactory
進行構造”。 EncoderFactory
確實具有jsonEncoder
工廠方法,該方法采用Schema
和OutputStream
。
我只是嘗試了一下,創建JsonEncoder
是:
JsonEncoder jsonEncoder = EncoderFactory.get().jsonEncoder(genericRecord.getSchema(), out);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.