Skip to content

josexy/MyPrettyTable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyPrettyTable

Print Table with C++ like mysql. It also supports Chinese characters.

Example

Source file:

#include <iostream>
#include "PrettyTable.h"
using namespace std;

int main() {
    vector<string>header = { "姓名","学号","信息" };
    vector<string>row1 = { "小明","1111111111","你好、我爱C++" };
    vector<string>row2 = { "小红","22222222222","你好?我爱Python" };
    vector<string>row3 = { "小光","3333333333333","你好,我爱PHP" };
    vector<vector<string>>vecs{ row1,row2,row3 };
    PrettyTable pt;
    try {
        pt.AddHeader(header);
        pt.AddRows(vecs);
        pt.SetAlign(PrettyTable::Align::Left);
        cout << pt << endl;
    }
    catch (Exception & e) {
        cout << e.what() << endl;
    }

    PrettyTable pt2;
    pt2.AddHeader({ "id","username","password" });
    pt2.AddRows({
        {"111","tony......","12345"},
        {"2222","mike","123"},
        {"33333","john","000"}
    });
    pt2.CancelFrameStyle();
    pt2.SetAlign(PrettyTable::Align::Internal);
    pt2.SetBorderStyle(Sign::PT_PLUS, Sign::PT_DOT, Sign::PT_SIG_1);
    pt2.DrawTable();
    cout << pt2.to_String() << endl;

    return 0;
} 

Build:

mkdir build&&cd build
cmake .. && make && ./PrettyTable

Output:

+------+---------------+------------------+
| 姓名 | 学号          | 信息             |
+------+---------------+------------------+
| 小明 | 1111111111    | 你好、我爱C++    |
| 小红 | 22222222222   | 你好?我爱Python |
| 小光 | 3333333333333 | 你好,我爱PHP    |
+------+---------------+------------------+

   id    username   password
  111   tony......   12345
  2222     mike       123
 33333     john       000
 

In Windows:

image

In Linux:

image

About

Similar to MySQL printing data table by C++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published