1
私はavroスキーマを持っており、そこからすべてのフィールド名を抽出したいと思います。それを行う方法はありますか?Avroスキーマからすべてのフィールド名を取得するには?
テストスキーマは、そのようなものです:ここでは
{
"type": "record",
"name": "wpmcn.MyPair",
"doc": "A pair of strings",
"fields": [
{"name": "left", "type": "string"},
{"name": "right", "type": "string"}
]
}
はコードです:上記
public static void main(String[] args) throws IOException {
Schema schema =
new Schema.Parser().parse(AvroTest.class.getClassLoader().getResourceAsStream("pair.avsc"));
System.out.println(schema.getFields());
}
はそのように出力します:
[left type:STRING pos:0, right type:STRING pos:1]
しかし、私はそれだけを返す必要があることを望みます配列リストには "left"と "right"があります。現在、私は必要のないタイプとposも返します。それを得る方法はありますか?あなたは、以下に示すようfield.name()
を使用していることを行うことができます
AvroTestに何が含まれていますか? –