java - 如何使用表格格式将对象列表打印到文件

标签 java formatting

我必须将对象列表打印到表格格式的文本文件中。例如,如果我有 Person(具有 getName、getAge 和 getAddress 方法)对象列表,则文本文件应如下所示。

Name       Age      Address

Abc        20       some address1
Def        30       some address2 

我可以通过手动编写一些代码来做到这一点,我必须在其中处理空格和格式问题。

我很好奇它们是 API 还是工具来完成这种格式化工作?

最佳答案

import java.util.*;

public class Test {

    public static void main(String[] args) {
        List<Person> list = new ArrayList<Person>();
        list.add(new Person("alpha", "astreet", 12));
        list.add(new Person("bravo", "bstreet", 23));
        list.add(new Person("charlie", "cstreet", 34));
        list.add(new Person("delta", "dstreet", 45));

        System.out.println(String.format("%-10s%-10s%-10s", "Name", "Age", "Adress"));
        for (Person p : list)
            System.out.println(String.format("%-10s%-10s%-10d", p.name, p.addr, p.age));
    }
}

class Person {
    String name;
    String addr;
    int age;
    public Person(String name, String addr, int age) {
        this.name = name;
        this.addr = addr;
        this.age = age;
    }
}

输出:

Name      Age       Adress    
alpha     astreet   12        
bravo     bstreet   23        
charlie   cstreet   34        
delta     dstreet   45        

关于java - 如何使用表格格式将对象列表打印到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2805373/

相关文章:

java - GWT 在文本框中显示小数

java - 在 MBA m1 Activity 监视器中,处理器名称 "java"显示 "kind" "intel"

python - 字符串 block 格式化挑战

php - Aptana PHP Formatter - 使用自定义格式规则

java - 如何验证特定 int 范围的 EditTextPreference 值

基本计时器上的 Java IllegalThreadStateException

java - Notify 似乎唤醒了多个线程

python - 如何在 Python 日志记录中设置组合字段的宽度

c# - VS2010格式化在 "empty"控制流语句后插入空格

android - 格式化 System.currentTimeMillis()