2016-09-13 49 views
0

早上好,我正在努力研究Java的基础知识,并试图在命令行和控制台中获取一个以指定列宽打印的字符串。它是一串文本,所以我不想截断不适合的数据,而是希望它在下一行打印,如果它不符合指定的宽度。这可能吗?我使用格式化程序查看了各种各样的东西,但都没有成功。是否可以为Java输出设置列宽?

+0

简短的回答:没有。编写你自己的输出过滤器,如果你真的需要这个,它不会很难做到。 – markspace

回答

0

这并不难。 你可以这样做:

public static void printLimit(Object obj, int width) { 

    String val = obj.toString(); 

    if (val.length() > width && width > 0) { 
     System.out.println(val.substring(0, width)); 
     printLimit(val.substring(width, val.length()), width); 
    } else { 
     System.out.println(val); 
    } 

} 
+0

假设控制台有一个固定宽度的字体 –

+0

谢谢你的帮助。我一直在想事情,但正如你所表明的那样,这很好,很简单。 – NewToThis

相关问题