使用jsp按钮单击并使用java打开文本文件
我是在做了一些研究后才提出这个问题的。我试图用java和jsp打开本地机器中的文本文件。ie当我在jsp中单击一个按钮时,它应该会为我打开文本文件。谁能帮我一下吗 嗨,这是我的代码:使用jsp按钮单击并使用java打开文本文件,java,jsp,button,text,click,Java,Jsp,Button,Text,Click,我是在做了一些研究后才提出这个问题的。我试图用java和jsp打开本地机器中的文本文件。ie当我在jsp中单击一个按钮时,它应该会为我打开文本文件。谁能帮我一下吗 嗨,这是我的代码: import java.awt.Desktop; import java.io.File; public class Start extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse res
import java.awt.Desktop;
import java.io.File;
public class Start extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException {
try {
if ((new File("C:\\Debug\\log20.txt")).exists()) {
Process p = Runtime
.getRuntime()
.exec("C:\\Debug\\log20.txt");
p.waitFor();
} else {
System.out.println("File is not exists");
}
System.out.println("Done");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Web.xml:
<servlet>
<servlet-name>LogFile</servlet-name>
<servlet-class>com.abc.def.LogFile</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogFile</servlet-name>
<url-pattern>/logfile</url-pattern>
</servlet-mapping>
日志文件
com.abc.def.LogFile
日志文件
/日志文件
JSP:
EMC授权
lmgrd选项
开始/停止/重新读取
开始/停止/重新读取
日志文件
地位:
如果要在外部程序中浏览文件,可以这样尝试
Process p = Runtime.getRuntime().exec("C:\\Path\\to\\notepad.exe C:\\Debug\\log20.txt");
如果您想浏览网页中的文件,可以尝试以下操作:
PrintWriter out = res.getWriter();
File file = new File("C:\\Debug\\log20.txt");
if (file.exists()) {
BufferedReader input = new BufferedReader(new FileReader(file));
String line = "";
while ((line = input.readLine()) != null) {
out.println(line);
}
}
到目前为止您尝试了什么。post您的代码文件位于您的计算机上。服务器在哪里运行?它也在你的机器上运行吗?是的,两者都在我的机器上。我的意思是服务器也在我的机器上运行。感谢您的帮助。我发布了代码为什么在servlet中使用System.out.println?这是控制台程序。嗨,谢谢你的回答。我没有任何notepad.exe。am所做的一切就是运行一个exe文件,该文件将在某个位置创建一个log.txt文件。现在我想在jsp页面上点击按钮打开这个.txt文件。记事本是一个文本编辑器,它预装在我所熟悉的每一个windows版本中。您可能会找到它
C:\\Windows\System32\notepad.exe
Hi fujy,非常感谢。它工作了,我现在可以打开txt文件了。正如我所说的,我正在用java代码启动一个exe文件,该文件将日志文件存储在某个位置。我要做的是从一个jsp按钮运行这个exe文件,我可以这样做。问题是有一个文件,我必须从网页浏览,然后运行exe文件。exe文件将与所浏览文件的所有详细信息一起运行。我也可以浏览该文件,但不确定如何将浏览的文件与exe文件连接起来。希望我没有混淆。对不起,我试图理解你,但我无法理解,如果你想用记事本浏览文件,然后使用上述解决方案,如果你想在网页中浏览文件,然后阅读其内容并在回复中发送******如果你想在网页中浏览文件,然后阅读其内容并在回复中发送******这正是我想要的。你能给我一个样品吗。提前谢谢
PrintWriter out = res.getWriter();
File file = new File("C:\\Debug\\log20.txt");
if (file.exists()) {
BufferedReader input = new BufferedReader(new FileReader(file));
String line = "";
while ((line = input.readLine()) != null) {
out.println(line);
}
}