首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在将内容附加到StringBuffer对象时,无法获得新行"\n“

问在将内容附加到StringBuffer对象时,无法获得新行"\n“
EN

Stack Overflow用户
提问于 2013-08-01 18:43:34
回答 3查看 361关注 0票数 3

我已经编写了一个方法,它接受大字符串并将其分成两行:

代码语言:javascript
复制
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);在对话框中打印此字符串。

所以任何人都可以给出如何让这个代码工作的建议。谢谢你。

EN

回答 3

Stack Overflow用户

发布于 2013-08-01 18:45:05

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

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

票数 5
EN

Stack Overflow用户

发布于 2013-08-01 18:46:18

你能试试这样的东西吗?

代码语言:javascript
复制
    strBuff.append(System.getProperty("line.separator")); 
票数 1
EN

Stack Overflow用户

发布于 2013-08-01 18:46:49

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17991829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档