Vorrei creare un'applicazione che richiede di leggere un file .txt
nella directory del mio progetto.Come leggere un file TXT nella directory della pagina del server Java
Questo è il mio codice della mia 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>
Quando eseguo il codice di cui sopra, il mio browser mi dice che aFile.txt
non può essere trovato. Quindi, ho inserito aFile.txt
nella stessa directory in cui viene eseguita questa pagina Web (index.jsp
). Mi chiedo, cosa dovrei scrivere per trovare la directory di aFile.txt
E questo è il modo in cui il mio problema è stato risolto. Grazie 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>
Sì, l'ho messo su web-inf. Cosa succede se lo metto fuori da web-inf? per esempio faccio una cartella e la metto lì. – farissyariati
usa il codice sopra per ottenere il percorso del file di testo. –