如何在java控制台中对齐文本?

时间:2013-12-04 22:15:07

标签: java leftalign

如何在java eclipse控制台中保留对齐文本。例如,行必须是50个字符,并且单词不应该分开。我试过上面的代码,但我认为它不起作用。我怎么能这样做?

public void Left(String str){

    if(str.length()>50){
        int cursor = 0;
        int k = 0;
        for (int i = 0; i < str.length(); i++,cursor++) {
            if(cursor%50 == 0){
                //if(str.charAt(cursor)!=' ')
                    for (int index = i; index > 0; index--) {
                        if(str.charAt(index) == 32){
                            String left = str.substring(0, index);
                            String right = str.substring(index+1, str.length());
                            str = left+"\n"+right;
                            int lineLength = str.split("\n")[k].length();
                            int d = 50-lineLength;
                                while(d-- != 0){
                                    String left2 = str.substring(k*50, (k*50)+lineLength);
                                    String right2 = str.substring(lineLength++, str.length());
                                    str = left2+" "+right2;

                                }
                                k++;
                            break;
                        }
                    }
            }
        }


    }
    System.out.println(str);
}

1 个答案:

答案 0 :(得分:0)

最简单的方法是在空格上进行分割,然后循环遍历数组,每当行长度太宽而下一个单词时,打印每个单词后跟空格或换行符。处理长于行限制的单词,并将它们打印在自己的行上。