我想在控制台生成表格!
----------------解决方案--------------------------------------------------------
生成什么样子的,有表头的表格?
例 如:
id password age address
1 34 78 asdfdf
2 2222 23 sssss
这样子的?
----------------解决方案--------------------------------------------------------
恩,对啊!是要有表格的!快点啊,我一直在等你的回答呢!你先不要去水区灌水了!拜托!谢了!
[此贴子已经被作者于2006-10-9 9:40:00编辑过]
----------------解决方案--------------------------------------------------------
你一楼的就是对的啊,它输入的不就是表格的形式吗?
如果你想得到表头的信息,你可以用这个方法,先把表头打印出来
先得到ResultSet rs;
然后ResultSetMetaData rsmd = rs.getMetaData();
然后用一个循环把表头输出
for(int i=0;i<rsmd.getColumnCount();i++){
System.out.print(rsmd.getColumnName(i+1)+"\t\t");
}
System.out.println();
然后输出你的数据就可以了
while(rs.next){
for(int i=0;i<rsmd.getColumnCount();i++){
System.out.print(rs.getString(i+1)+"\t\t");
}
System.out.println();
}
你试试看,能不能实现你想要的效果
----------------解决方案--------------------------------------------------------
呵呵,我是想在数据的四周加上边框,即所谓的表格
----------------解决方案--------------------------------------------------------
那也不难啊,判断一下就可以了,如果是最左的数据,则加一个左边框
如果是最后一条数据则加一个下边框.
如此类似的
MySQL不就是这样显示的吗?
----------------解决方案--------------------------------------------------------
关键是我还不知道怎么加左右边框啊!谢了,我在等啊!
----------------解决方案--------------------------------------------------------
那你等等啊,我先自己试验一下,呵呵
----------------解决方案--------------------------------------------------------
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:account","sa","123456");
Statement sta=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs=sta.executeQuery("select * from serverIDINFO");
ResultSetMetaData rsmd=rs.getMetaData();
//先得到总共有多少列
int cols=rsmd.getColumnCount();
//再得到总共有多少条数据
int all=0;
while(rs.next()){
all++;
}
rs.beforeFirst();
for(int i=0;i<cols;i++){
System.out.print("----------------");
}
System.out.println();
for(int i=0;i<cols;i++){
String name=rsmd.getColumnName(i+1);
if(name.length()<8)
System.out.print("|\t"+name+"\t");
else
System.out.print("|"+name+"\t");
if(i==cols-1){
System.out.println("|");
}
}
for(int i=0;i<cols;i++){
System.out.print("----------------");
}
System.out.println();
for(int i=0;i<all;i++){
rs.next();
for(int j=0;j<cols;j++){
System.out.print("|\t"+rs.getString(j+1).trim()+"\t");
if(j==cols-1)
System.out.println("|");
}
for(int k=0;k<cols;k++){
System.out.print("----------------");
}
System.out.println();
}
试试这个方法先
----------------解决方案--------------------------------------------------------
恩,这个方法是可以的,我已经试过了!不过我还想再完善一下,就是在输出的时候用纯表格的边框框起来~!
----------------解决方案--------------------------------------------------------