当我将文本从java servlet加载到JTextPane时,为什么要松开换行符呢?

我尝试使用java servlet加载包含多行文本的文本文件的内容。
当我在浏览器中测试servlet时它运行正常。 文本加载了新的行号。
但是当我将它加载到我的swing应用程序中的字符串然后使用textpane.setText(text); 新线路消失了。 我尝试了很多我在网上找到的解决方案,但仍然无法做到正确。

Servlet代码:
从文件中读取文本(简化):

 File file = new File(path); StringBuilder data = new StringBuilder(); BufferedReader in = new BufferedReader(new FileReader(file)); String line; while ((line = in.readLine()) != null) { data.append(line); data.append("\n"); } in.close(); 

发送文字:

 PrintWriter out = response.getWriter(); out.write(text)); 

这是一个平台问题吗? Servlet是在Linux上编写和编译的,但是我在Windows上运行它(在JBoss上)。 文本文件也存储在我的机器上。

而不是data.append("\n")使用

 data.append(System.getProperty("line.separator"));