将Java对象转换为Java中的TSV



我生成一个报告,从postgresql读取数据,然后填充Java对象下面是一种示例骨架,我想在其中显示Main对象中有许多集合对象,即ReportMessageStructure

public class ReportMessageStructure {


protected MessageHeader messageHeader;

protected MessageDuration messageDuration;

protected ObjectA sampleListA;

protected ObjectB sampleListB;

protected ObjectC smapleListC;
}

现在我的要求是将数据写入TSV文件。你能告诉我做这件事的最佳方法吗。我知道如果必须转换成XML,我可以使用JAXB。然而,需要转换为TSV的方法。任何提示/建议都会很有帮助。

从物体到TSV ,数据将产生的最大大小约为700MB

您可以使用Apache Commons CSV库中的CSVPrinterCSVFormat等于TDF

try (CSVPrinter printer = new CSVPrinter(new FileWriter("csv.txt"), CSVFormat.TDF)) {
printer.printRecord("id", "userName", "firstName", "lastName", "birthday");
printer.printRecord(1, "john73", "John", "Doe", LocalDate.of(1973, 9, 15));
printer.println();
printer.printRecord(2, "mary", "Mary", "Meyer", LocalDate.of(1985, 3, 29));
} catch (IOException ex) {
ex.printStackTrace();
}