2011-04-09 13 views
18

मुझे डेटा को कंसोल में एक टेबल के रूप में आउटपुट करने की आवश्यकता है। मैं सोच रहा था कि कुछ जावा पुस्तकालय हैं जो एएससीआईआई कला में ड्राइंग टेबल का ख्याल रखेंगे, कोशिकाओं के अंदर मूल्यों को संरेखित करेंगे, आदि?ASCII तालिकाओं को चित्रित करने के लिए कोई जावा पुस्तकालय?

╔══════╤═══════════╤════════╗ 
║ ID │ Name  │ Age ║ 
╠══════╪═══════════╪════════╣ 
║ 1 │ John  │ 24 ║ 
╟──────┼───────────┼────────╢ 
║ 2 │ Jeff  │ 19 ║ 
╟──────┼───────────┼────────╢ 
║ 3 │ Joel  │ 42 ║ 
╚══════╧═══════════╧════════╝ 
+4

आप के बारे में ASCII आर्ट में * ASCII * गंभीर हैं, तो आप केवल उपयोग कर सकते हैं '+', '-' और '|' रेखा रेखाचित्र पात्रों के रूप में, उदाहरण में उपयोग किए जाने वाले फैंसी वाले नहीं। –

+0

मैंने एक बार PHP में ऐसा फ़ंक्शन बनाया (ई-मेल आउटपुट के लिए तालिका को प्रारूपित करने के लिए)। एचटीएमएल या पीडीएफ में आउटपुट करने वाले अन्य कार्यों के समान इंटरफ़ेस था। –

+0

यहां [लिंक] है (http://svn.berlios.de/wsvn/aligilo/programo/iloj/iloj_kotizo_formatado.php) - कक्षा TekstaKotizoFormatilo। लेकिन यह बहुत टिप्पणी नहीं की गई है, और एस्परांतो में, और टेबल के अपने प्रारूप के लिए, इसलिए यह आपकी मदद नहीं कर सकता है। यदि यहां कोई उपयुक्त लाइब्रेरी नहीं मिली है, तो मैं इसे जावा पर पोर्ट करने के बारे में सोच सकता हूं। –

उत्तर

6

यह मेरे लिए बहुत अच्छी तरह से काम किया: http://code.google.com/p/java-ascii-table/

String [] header = { 
     "User Name", 
     "Salary", "Designation", 
     "Address", "Lucky#" 
}; 

String[][] data = { 
     { "Ram", "2000", "Manager", "#99, Silk board", "1111" }, 
     { "Sri", "12000", "Developer", "BTM Layout", "22222" }, 
     { "Prasad", "42000", "Lead", "#66, Viaya Bank Layout", "333333" }, 
     { "Anu", "132000", "QA", "#22, Vizag", "4444444" }, 
     { "Sai", "62000", "Developer", "#3-3, Kakinada" }, 
     { "Venkat", "2000", "Manager" }, 
     { "Raj", "62000"}, 
     { "BTC"}, 
}; 

निम्नलिखित कौन सा renders:

 
+-----------+--------+-------------+------------------------+---------+ 
| User Name | Salary | Designation |   Address  | Lucky# | 
+-----------+--------+-------------+------------------------+---------+ 
|  Ram | 2000 |  Manager |  #99, Silk board | 1111 | 
|  Sri | 12000 | Developer |    BTM Layout | 22222 | 
| Prasad | 42000 |  Lead | #66, Viaya Bank Layout | 333333 | 
|  Anu | 132000 |   QA |    #22, Vizag | 4444444 | 
|  Sai | 62000 | Developer |   #3-3, Kakinada |   | 
| Venkat | 2000 |  Manager |      |   | 
|  Raj | 62000 |    |      |   | 
|  BTC |  |    |      |   | 
+-----------+--------+-------------+------------------------+---------+ 
2

यहाँ भी एक आसान है पुस्तकालय: https://github.com/JakeWharton/flip-tables

दस्तावेज़ के रूप में कहा:

String[] headers = { "Test", "Header" }; 
String[][] data = { 
    { "Foo", "Bar" }, 
    { "Kit", "Kat" }, 
}; 
System.out.println(FlipTable.of(headers, data)); 

निम्नलिखित उत्पादन होना चाहिए:

╔══════╤════════╗ 
║ Test │ Header ║ 
╠══════╪════════╣  
║ Foo │ Bar ║ 
╟──────┼────────╢ 
║ Kit │ Kat ║ 
╚══════╧════════╝