使用jsp读取HTML格式文件
MyHtml.html
该文件为被读取的html页面
<span style="font-size:18px;"><!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>MyHtml.html</title>
</head>
<body>
读取HTML文件内容
</body>
</html></span>
htmlRead.jsp
<span style="font-size:18px;"><%@page import="java.io.BufferedReader"%>
<%@page import="java.io.FileReader"%>
<%@page import="java.io.File"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
//String path = request.getContextPath();
//System.out.println("path=="+path);
//String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>实例10:使用jsp读取HTML格式文件</title>
</head>
<body>
<%
//String filePath = request.getSession().getServletContext().getRealPath("/")+"JSP_Ajax"+"\\";
//System.out.println("filePath=="+filePath);
String path ="C:\\"; // 这边文件目录需改成相对路径
File file = new File(path,"MyHtml.html");
FileReader fr = new FileReader(file); //字符输入流
BufferedReader br = new BufferedReader(fr); //使文件可按行读取并具有缓冲功能
StringBuffer strB = new StringBuffer(); //strB用来存储jsp.txt文件里的内容
String str = br.readLine();
while(str!=null){
strB.append(str).append("<br>"); //将读取的内容放入strB
strB.append("<xmp>").append(str).append("</xmp>"); //将读取的内容放入strB
str = br.readLine();
}
br.close(); //关闭输入流
%>
<center>
<%=strB %>
</center>
</body>
</html></span>
由于浏览器遇见HTML代码总是要进行解释,从HTML文件里读取的HTML标记会被浏览器”截获“而不被显示;而xmp标签可以让浏览器不解释其内部的所有内容(包括HTML标记),从而使读取到的HTML标记才会被显示出来。