jsp用include动态包含静态页面html页面出现乱码,求原因。要寻根究底的原因。Thanks. 50

①、html全部代码如下:<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head><ti... ①、html全部代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>MyHtml.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

</head>

<body>
<form action="index.jsp" enctype="multipart/form-data" method="post">
<input type="file" name="file1"/><!-- 必须有name属性,否则不能实现上传功能 -->
<input type="submit" value="上传"/>
</form>
</body>
</html>
②、index.jsp全部代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.jspsmart.upload.SmartUpload"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>

<body>
<!-- jsp动态包含,属性flush必须有 -->
<!-- 时间:2011.11.17.13:47 -->
<!--@author:luyong -->
<!-- 若被包含的页面为html静态页面,则将其的charset设置为GB2312则可以解决中文乱码问题,设置为UTF-8则不行,原因正是我想知道的。。原因!!!!!-->
<!-- 建议所有的jsp动态页面的pageEncoding统一,设置为GB2312或者UTF-8解决乱码问题-->
<!-- 浏览器中的编码建议设置为自动 -->
<jsp:include page="MyHtml.html" flush="true"></jsp:include>
<%
int c=0;
try{
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.setCharset("UTF-8");
su.upload();
c=su.save("/upload",su.SAVE_VIRTUAL);
}catch(Exception e){
e.printStackTrace();
}
if(c==0)
{
out.print("上传失败");
}else
{
out.print(c+"个文件上传成功");
}
%>
</body>
</html>
展开
 我来答
零二八网络
2011-11-17 · 超过21用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:33万
展开全部

描述不是很清楚,是包含文件之后,jsp页面乱码了,还是仅仅包含的文件显示出来乱码呢?

建议用第三方编辑器将文件另存为:utf-8

匿名用户
2011-11-17
展开全部
不知道你的文件是不是在eclipse下面创建的,如果是的,鼠标右键选择properties查看一下两个文件的编码是不是一样的,是不是都是UTF-8,如果不是一样,请先都改成UTF-8,再打两个文件看里面是不是乱码,有乱码的话,请把乱码改成中文再保存,再运行就好了。
如果不是在eclipse下面创建的,直接是通过文本编辑器创建的话,请用记事本把文件打开,选择另存为,编码选成UTF-8,再保存
再运行看一下,还有没有乱码。
文件乱码不是说你把pageEncoding写成一样就行了,要看它本身的编码是什么。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lylegend13
2011-11-17 · TA获得超过4695个赞
知道大有可为答主
回答量:1701
采纳率:0%
帮助的人:1709万
展开全部
你好,把你的静态html页面,用记事本打开,另存为时,选择utf-8的编码,覆盖保存即可。

这种情况遇到过,我是这样的解决的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
溥曼凡03F
2011-11-17 · TA获得超过227个赞
知道小有建树答主
回答量:238
采纳率:0%
帮助的人:155万
展开全部
关于jsp页面乱码的问题。
我总结了一下,写了文档,你能够把那个文档全看懂的话。
相信,关于jsp页面乱码的问题那就不是问题了。
如果,你要的话,就让我发给你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式