2016-07-11 28 views
0

この時点で、私はオブジェクトからcsvを生成する作業をしています。私はネストされたクラスのcsvを生成する方法を知らない。たとえば、次のクラスがあります。JavaのオブジェクトからCSVファイルを生成する

@Getter 
@Setter 
public class Person { 
    private int age; 
    private Name name; 
} 

@Getter 
@Setter 
public class Name { 
    private String firstName; 
    private String lastName; 
} 

大きな問題があります。実際に私はjacksonやcommons csvのようなライブラリをほとんどテストしなかったし、解決策が見つからなかった。主な問題は、どのフィールドがオブジェクトにあるのかわからず、ヘッダーを動的に準備する必要があるということです。その操作を可能にする簡単な方法やライブラリはありますか?私はどんなヒントにも感謝しています。

+0

CSVを使用する特別な理由は何ですか? JSON? –

+0

何らかの理由がある –

答えて

0

グーグルであれば答えが出てくるかもしれません。 それはすでにここに答えた:スーパーCSVを使用してObject to CSV

を:CSVファイルを作成する目的でUsing super csv to write in csv from object

+0

実際にはネストされたクラスでは機能しません。ポーホスに対してのみ –

+0

ネストされたクラスではCsvsが機能しません。それらもExcel形式で表現することができます。ネストされたクラスは、その形式で表現することはできません。あなたは普通のpojosと一緒に行かなければならない。 –

0

何?あなたはクラスの入れ子を維持することが必要ですか? csvファイルからオブジェクトを再構築していますか?

オブジェクトのデータのみに興味がある場合は、プリミティブ型(または意味のあるtoString()を持つクラス)をすべて縮小して、階層を平坦化することを検討してください。 年齢、名前==>年齢、名、姓

階層を動的に取得するためにリフレクションを使用できます。

出力はcsvでなくてはなりませんか? JSONやXMLのような階層を保持する別の形式を使用することを検討しましたか?

関連する問題