`
zhwadezheng
  • 浏览: 7266 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

读取xml报 Invalid byte 1 of 1-byte UTF-8 sequence异常处理

    博客分类:
  • JAVA
 
阅读更多
	public void writeXmlFile(){
		String fileName = "abc.xml";
		String configPath = getClass().getResource( "/" ).getPath();			
		StringBuilder filepath = new StringBuilder(30);
		filepath.append(configPath).append("/").append(fileName);
		File file = new File(filepath.toString());
		if(!file.isFile()){//所读取的文件不存在,那么就创建一个新的文件
			try {
				if(file.createNewFile()){
					DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
					DocumentBuilder builder=null;
					try{
						builder = dbf.newDocumentBuilder();
						Document doc = builder.newDocument();
						Element root = doc.createElement("ABC");
						doc.appendChild(root); //将根元素添加到文档上
					    FileOutputStream fos = new FileOutputStream(new File(filepath.toString()));
					    OutputStreamWriter outwriter = new OutputStreamWriter(fos,"UTF-8");
					    callWriteXmlFile(doc,outwriter,"UTF-8");
					    outwriter.close();
					    fos.close();
					}catch(Exception e){
						e.printStackTrace();
					}
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
	public static void callWriteXmlFile(Document doc, Writer w,String encoding) {
		try {
			Transformer xformer = TransformerFactory.newInstance().newTransformer();
			DOMSource source = new DOMSource(doc);
			xformer.setOutputProperty(OutputKeys.ENCODING, encoding);
			xformer.setOutputProperty(OutputKeys.INDENT, "yes");
			StreamResult result = new StreamResult(w);
			xformer.transform(source, result);
		}catch (TransformerConfigurationException e) {
			e.printStackTrace();
		}catch (TransformerException e) {
			e.printStackTrace();
		}
	}

 无论是xml文件还是内容都是UTF-8编码格式,搞定收工!

分享到:
评论

相关推荐

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

    2. "xml读取异常Invalid byte 1 of 1-byte UTF-8 sequence-中文版的window下java的默认的编码为GBK.url":这个文件名暗示了解决XML文件读取异常的方法,尤其是在Windows环境下,Java默认的文件编码可能是GBK,这可能...

    php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法

    在利用php解析xml时提示Invalid byte 1 of 1-byte UTF-8 sequence错误了,这个问题我百度查实说是编码问题,结果我把编码处理一下果然KO了,下面我来分享一下解决办法

    Java解决UTF-8的BOM问题

    然而,UTF-8有一个特殊特性,那就是它可以带有Byte Order Mark(BOM),这是一个特殊的字节序列,用于标识数据的编码方式。在某些情况下,BOM可能会引起问题,例如在读取文本文件时,可能会导致额外的乱码字符出现在...

    invalid multibyte character sequence 870告警1

    Invalid Multibyte Character Sequence 警告解析 在编程中,特别是在嵌入式系统开发中,我们经常会遇到Invalid Multibyte Character Sequence 警告。这个警告通常来自于编译器,告知我们存在非法的多字节字符序列。...

    rlexception: invalid roslaunch xml syntax: no element found: lin

    在ROS(Robot Operating System)开发过程中,遇到`rlexception: invalid roslaunch xml syntax: no element found: line 1, column 0`这样的错误信息时,表明当前的`.launch`文件存在XML语法错误。具体来说,可能是...

    cesu8:用于在CESU-8和UTF-8之间转换的库

    如果cesu8::encode()或cesu8::decode()仅遇到同时是有效CESU-8和UTF-8数据的数据,则cesu8板条箱将使用( )来利用此数据。 这意味着没有不必要的操作和不必要的内存分配: use std :: borrow :: Cow; let str = ...

    利用C++读取XML文件

    读取XML文件是许多软件项目中的常见需求,例如配置文件、数据存储或网络通信。TinyXML库是一个小巧且易于使用的C++库,专门设计用于解析和操作XML文档。下面将详细介绍如何利用C++和TinyXML库来读取XML文件。 1. **...

    SQL Server数据迁移至PostgreSQL出错的解释以及解决方案

    本篇文章将深入探讨一个具体的错误:“invalid byte sequence for encoding \"UTF8\": 0x00”,并提供相应的解决方案。 这个错误发生在尝试将包含空字符(0x00)的数据从SQL Server迁移到PostgreSQL时。在SQL ...

    ruby中文文档(ruby入门级别教程)

    1. **Ruby用户指南**:这是学习Ruby的基础,它将引导你了解Ruby的基本语法、数据类型、控制结构、函数、类和模块等概念。通过这本指南,你可以掌握如何在Ruby中编写简单的程序,并逐渐深入到更复杂的编程技巧。 2. ...

    android layout XML解析错误的解决方法

    <?xml version="1.0" encoding="utf-8"?> ``` 如果这一行存在格式问题,如额外的字符、缺失的引号或错误的编码,都可能导致解析错误。有时,即使XML语法没有其他明显错误,这行也可能导致问题。如果删除这行可以...

    cvc-complex-type.2.4.d: Invalid content was found

    在XML Schema设计中,"cvc-complex-type.2.4.d: Invalid content was found" 是一个常见的错误信息,这通常意味着在解析XML文档时,遇到了不符合定义的复杂类型的内容。这个错误通常涉及到XML Schema的约束规则,即...

    Zenmap 报’utf8′ codec can’t decode byte 0xc0 in position 0: invalid start byte错误部分解决方案

    本文将深入探讨“utf8 codec can’t decode byte 0xc0 in position 0: invalid start byte”这一错误,以及如何针对Zenmap工具提供部分解决方案。 首先,让我们了解这个错误的含义。UTF-8是一种广泛使用的字符编码...

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd5 in position 2: invalid continuation byte-附件资源

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd5 in position 2: invalid continuation byte-附件资源

    使用dorado基础技术进行Web应用开发

    使用dorado基础技术进行Web应用开发

    ios-弹框评价.zip

    设计思路: 在lastWindow上添加一个等宽等高的子视图,在此视图上进行布局。 YSEvaluateControl文件夹:就是控件所在文件玩意儿,...1、创建控件 2、添加valueChanged事件,参考ViewController代码,非常简单。

    redhat-rpm-config-125-1.el8.noarch(1).rpm

    离线安装包,亲测可用

    解决pyshp UnicodeDecodeError的问题

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcc in position 0: invalid continuation byte 这个是编解码的问题,解决方法是把版本降到1.2.12就可以了,虽然records里面的中文字段还需要再次解码,但...

    Python基础教程-第9章-异常处理-.ppt

    - `try/except`块:这是Python中最基本的异常处理结构,`try`部分包含可能引发异常的代码,`except`部分用于处理异常。 - `finally`块:无论是否发生异常,`finally`中的代码都会被执行,常用于资源清理。 - `...

Global site tag (gtag.js) - Google Analytics