custom_data/
custom_data.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
use tabprinter::{Alignment, Table, TableStyle};

struct Person {
    name: String,
    age: u32,
    city: String,
}

fn main() {
    let people = vec![
        Person {
            name: "Alice".to_string(),
            age: 30,
            city: "New York".to_string(),
        },
        Person {
            name: "Bob".to_string(),
            age: 25,
            city: "Los Angeles".to_string(),
        },
        Person {
            name: "Charlie".to_string(),
            age: 35,
            city: "Chicago".to_string(),
        },
    ];

    let mut table = Table::new(TableStyle::FancyGrid);

    table.add_column("Name", 10, Alignment::Left);
    table.add_column("Age", 5, Alignment::Right);
    table.add_column("City", 15, Alignment::Center);

    for person in people {
        table.add_row(vec![person.name, person.age.to_string(), person.city]);
    }

    table.print().unwrap();
}