3

我已经编写了将大字符串分成两行的方法:

private String  getNameSplited(String name){
char[] sAr = name.toCharArray();

StringBuffer strBuff = new StringBuffer(name.length());
    boolean start = true;
    for (int i = 0; i < sAr.length; i++) {
        if(i > 20) {
            if(sAr[i] == ' ' && start){
                strBuff.append("\n");
                start = false;
            } else {
                strBuff.append(sAr[i]);
            }
        } else {
            strBuff.append(sAr[i]);
        }
    }
    return strBuff.toString();
}

在这种方法中,“\n”不起作用。在我的项目中,我们没有使用直接 System.out.println();

我们正在使用 out.print(strBuff); 在对话框中打印此字符串。

那么可以给建议如何使这段代码工作。谢谢...

4

3 回答 3

5

\n可能不是给定系统中的换行符。用于System.getProperty("line.separator")获取运行时环境对应的行分隔符。

使用strBuff.append(System.getProperty("line.separator"));或存储System.getProperty("line.separator")为常量,并在需要新行的任何地方使用它。

于 2013-08-01T10:45:04.660 回答
1

你可以试试这样的东西吗?

    strBuff.append(System.getProperty("line.separator")); 
于 2013-08-01T10:46:17.850 回答
1

如果输出目标是文件,您可以使用“line.seperator”属性 strBuff.append(System.getProperty("line.separator"))

于 2013-08-01T10:46:49.307 回答