簡體   English   中英

Java如何將GenericRecord轉換為json字符串?

[英]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工廠方法,該方法采用SchemaOutputStream

我只是嘗試了一下,創建JsonEncoder是:

JsonEncoder jsonEncoder = EncoderFactory.get().jsonEncoder(genericRecord.getSchema(), out);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM