java - 包含换行符的文件中的字符串未在 TextArea 中设置

标签 java textarea vaadin

我读取了包含以下术语的普通文本文件:

    StringBuilder sb = new StringBuilder();
    for (String line : Files.readAllLines(file.toPath())) // The function Files.readAllLines reads the file using standard UTF-8 encoding
    {
      sb.append(line);
    }
    return sb.toString();

文件的内容可能如下:

This is a test text\nline break before\n\nantoher line break

现在我的问题是,如果我将此文本设置到 TextArea 中,文本就会按原样打印出来:

This is a test text\nline break before\n\nantoher line break

如果我按以下方式设置文本:

textArea.setValue("This is a test text\nline break before\n\nantoher line break");

打印出换行符。

从文件中读取字符串时,如何保护“\n”换行符?

最佳答案

由于 readAllLines,您会丢失换行符。您可以在追加调用中手动添加换行符。您可能想也可能不想在最后一行添加一个。

StringBuilder sb = new StringBuilder();
for (String line : Files.readAllLines(file.toPath())) // The function Files.readAllLines reads the file using standard UTF-8 encoding
{
  sb.append(line).append('\n');
}
return sb.toString();

关于java - 包含换行符的文件中的字符串未在 TextArea 中设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36688188/

相关文章:

java - Spring创建Bean报错,pom中声明依赖,spring找不到类

java - 目录搜索方法总是返回 null

java - 找出 HashMap 中使用的类型

javascript - 对象 HTMLTextAreaElement javascript 响应

tomcat - vaadin push 适用于 tomcat 7 但不适用于 tomcat 8

java - Jersey 客户端语法错误请求错误

actionscript-3 - 文本区域未正确更新,缺少字符

javascript - 尝试更改 Textarea 的值(使用 Skulpt)

javascript - 将 Google Adwords 脚本添加到 Vaadin 应用程序中

npm - 瓦丁 19 : Using NPM modules with own Vaadin dependencies fails