Я хотел бы создать приложение, которое требует прочитать файл .txt
в моем каталоге проектов.Как прочитать файл TXT в каталоге страниц сервера Java
Это мой код моего index.jsp
:
<%@page import="java.io.FileReader"%>
<%@page import="java.io.BufferedReader"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Read Text</title>
</head>
<body>
<%
BufferedReader reader = new BufferedReader(new FileReader("aFile.txt"));
StringBuilder sb = new StringBuilder();
String line;
while((line = reader.readLine())!= null){
sb.append(line+"\n");
}
out.println(sb.toString());
%>
</body>
</html>
Когда я выполняю код выше, мой браузер сообщает мне, что aFile.txt
не может быть найден. Затем я положил aFile.txt
в тот же каталог, что и на этой веб-странице (index.jsp
). Интересно, что мне написать, чтобы найти каталог aFile.txt
И вот как моя проблема была решена. Благодаря Ahmad Hasem
<%@page import="java.io.File"%>
<%@page import="java.io.InputStreamReader"%>
<%@page import="java.net.URL"%>
<%@page import="java.io.FileReader"%>
<%@page import="java.io.BufferedReader"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Read Text</title>
</head>
<body>
<%
String jspPath = session.getServletContext().getRealPath("/res");
String txtFilePath = jspPath+ "/aFile.txt";
BufferedReader reader = new BufferedReader(new FileReader(txtFilePath));
StringBuilder sb = new StringBuilder();
String line;
while((line = reader.readLine())!= null){
sb.append(line+"\n");
}
out.println(sb.toString());
%>
</body>
</html>
Да, я положил его на web-inf. Что, если я положил его на внешний веб-инф? например, я делаю папку и помещаю ее туда. – farissyariati
используйте приведенный выше код для получения пути к текстовому файлу. –