编码为 UTF-8 的JSP 文件中出现非法字符  问题

在项目开发中曾经碰到过一个奇怪的现象:在用 include 包含JSP 文件时发现最终生成的页面上会有多余的空白行,导致页面往下挪一行,使用goole浏览器发现,源代码中有个不能显示的字符&#65279,在查了一些文章后发现问题出在编辑器上。之前不知道使用什么编辑工具在保存 JSP 文件为 UTF-8 编码,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM),它的表示的是 Unicode 标记(BOM)。因此解决办法就是将代码保存的时候将 BOM 前面的勾去掉。

发现问题的测试代码:
test.jsp
---------------------
<%@ page pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=utf-8" %>
<%@ include file="1.jsp" %>
<table>
<tr><td>testing</td></tr>
</table>
<%@ include file="2.jsp" %>


1.jsp

http://www.sxrczx.com/docs/js/2288372.html#itself
---------------------
<%@ page pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=utf-8" %>
<div>hehe</div>

2.jsp
---------------------
<%@ page pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=utf-8" %>
<div>haha</div>


最终生成的页面代码如下:
---------------------




<div>hehe</div>
<table>
<tr><td>testing</td></tr>
</table>


<div>haha</div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值