Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 Invalid byte 1 of 1-byte UTF-8 sequence解决办法

Invalid byte 1 of 1-byte UTF-8 sequence解决办法

发布时间:2018-10-28   编辑:www.jquerycn.cn
jquery中文网为您提供Invalid byte 1 of 1-byte UTF-8 sequence解决办法等资源,欢迎您收藏本站,我们将为您提供最新的Invalid byte 1 of 1-byte UTF-8 sequence解决办法资源
在利用php解析xml时提示Invalid byte 1 of 1-byte UTF-8 sequence错误了,这个问题我百度查实说是编码问题,结果我把编码处理一下果然KO了,下面我来分享一下解决办法。

错误提示

Invalid byte 1 of 1-byte UTF-8 sequence

原因分析

在中文版的window下java的默认的编码为GBK,也就是所虽然我们标识了要将xml保存为utf-8格式但实际上文件是以GBK格式来保存的,所以这也就是为什么能够我们使用GBK、GB2312编码来生成xml文件能正确的被解析,而以UTF-8格式生成的文件不能被xml解析器所解析的原因。


把xml的encoding属性值UTF-8改为UTF8

org.xml.sax.SAXParseException: Content is not allowed in trailing section

把先要解析和字符串trim()一下即可解决问题。

解决:

1、最简单就是把<?xml version="1.0" encoding="UTF-8"?>改成<?xml version="1.0" encoding="gbk"?>

2、或者把xml打开另存的时候把字符集改为UTF-8后保存

或改程序

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy1430')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy1430>

 SAXReader reader = new SAXReader(); 
  org.dom4j.Document document = reader.read("D:\ha.xml"); 
  OutputFormat of = new OutputFormat(); 
  of.setEncoding("UTF-8"); //改变编码方式 
XMLWriter writer = new XMLWriter(new FileWriter "d:\dom4j.xml"), of); 


我使用的是eclipse编辑器如下操作即可

可以在Eclipse中更改,在 eclipse 的功能表 [Project]→[Properties],?? [Resources],在右?的「Text file encoding」,把原?硎窍到y??的??,改? 「UTF-8」。

您可能感兴趣的文章:
Invalid byte 1 of 1-byte UTF-8 sequence解决办法
python read_csv出现乱码怎么办
GoLang雪花算法和反推
php函数substr(),mb_substr()及mb_strcut的区别分析
java中JSONException: java.lang.String cannot be converted to JSONObject
php file_get_contents抓取Gzip网页乱码的解决方法
Paste html from Clipboard 可解决中文乱码问题。
Python 中文编码
JSP页面中文乱码问题
C#加密算法 六种C#加密算法分享

[关闭]