java 通过流将从数据库中查出来的数据生成一个txt文件,如何实现数据 列像表格一样对齐?

(其中数据长度不一,并有可能有空数据)

用java 1.5以上PrintWriter或者PrintStream新加的printf方法吧,可以像c语言的printf格式化每个栏位的长度的
比如:
public static void main(String[] args) {
for (int i = 0; i < 20; i += 3) {
System.out.printf("i=%5d\n", i);
}
}

要是写文件的话,就用PrintWriter套到Writer上,或者PrintStream套到OutputStream上,比如:
public static void main(String[] args) {
try{
FileOutputStream fos=new FileOutputStream("text.txt");
PrintStream ps=new PrintStream(fos);

for (int i = 0; i < 20; i += 3) {
ps.printf("i=%5d\n", i);
}
}catch(IOException e){
e.printStackTrace();
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-09-01
给一个提示:
首先估计出数据的最大长度
然后所有的数据在输出的时候都判断一下它离最多的位数差几位,然后用相应数量的空格补齐。
相似回答