我正在研究一个项目,其中有一小部分让我很困惑。
假设我有一个String数组:
String[]text = {"string","array"};
例如,。
我想把它变成一个字符串,每个单词之间都有一个新行“\ n”。
所以这是我的代码
public String setText(String [] text) throws UnsupportedEncodingException{
StringBuffer result = new StringBuffer();
String newline = System.getProperty("line.separator");
if (text.length > 0) {
result.append(text[0]);
for (int i=1; i<text.length; i++) {
result.append(newline);
result.append(text[i]);
}
}
return result.toString();
}
我的代码不起作用。返回值是单个字符串,但是当我使用它时,它仍然在一行中。
任何人都可以帮我这个吗?
谢谢
阿伦
答案 0 :(得分:1)
您是否看到了System.getProperty("line.separator");
返回的内容?
在不同的操作系统中,Windows中将使用不同的符号\n
- Linux和\r\n
尝试使用
System.getProperty("line.separator", "\r\n");
或System.getProperty("line.separator", "\n");
答案 1 :(得分:0)
取决于您如何使用结果。您是否尝试将其写入System.out /文件或类似文件?
答案 2 :(得分:-1)
我建议您使用Google Joiner中的Guava library。
Joiner.on(System.getProperty("line.separator")).join(text)