我正在尝试通过从文本文件中读取内容来发送邮件。
我正在尝试阅读的文件
Line 1
Line 2
Line 3
我已经使用 JUnit 测试了代码,并且收到了与文本文件格式相同的邮件。
使用 Junit 输出邮件
Line 1
Line 2
Line 3
但是当部署在 Tomcat 中时,我收到一封带有文本的邮件,但新行没有被识别。
使用tomcat服务器时输出邮件
Line 1Line 2Line 3
我用来读取文件内容的代码。
private String readFile(String pathname) throws IOException {
File file = new File(pathname);
StringBuilder fileContents = new StringBuilder((int) file.length());
Scanner scanner = new Scanner(file);
String lineSeparator = System.getProperty("line.separator");
try {
while (scanner.hasNextLine()) {
fileContents.append(scanner.nextLine() + lineSeparator);
}
return fileContents.toString();
} finally {
scanner.close();
}
}
我已将服务器置于调试模式,我可以看到新行正在附加fileContents.toString()
我不确定我错过了什么。有什么和字符集有关的吗?我不确定....