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

来源:百度知道 编辑:UC知道 时间:2024/06/18 11:20:13
(其中数据长度不一,并有可能有空数据)

用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();
}
}

给一个提示:
首先估计出数据的最大长度
然后所有的数据在输出的时候都判断一下它离最多的位数差几位,然后用相应数量的空格补齐。