JSP以相对路径读取文本文件并在浏览器中显示
时间: 2024-03-10 08:47:34 浏览: 164
可以使用JSP内置对象中的`ServletContext`来获取文件的真实路径,然后再使用`BufferedReader`来读取文件并输出到浏览器中。以下是示例代码:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Read Text File in JSP</title>
</head>
<body>
<%
String filePath = "/WEB-INF/data/file.txt"; // 相对路径,文件放在WEB-INF目录下
String realPath = application.getRealPath(filePath); // 获取文件的真实路径
BufferedReader reader = new BufferedReader(new FileReader(realPath));
String line = null;
while ((line = reader.readLine()) != null) {
out.println(line); // 输出文件内容到浏览器
}
reader.close();
%>
</body>
</html>
```
需要注意的是,文件必须放在WEB-INF目录下,因为该目录下的文件无法直接通过URL访问,保证了文件的安全性。同时,需要关闭文件读取流,否则会造成资源浪费和可能的文件锁定。
阅读全文