Go xml文件处理

Python019

Go xml文件处理,第1张

在开发中会常遇到xml数据序列化和反序列化,这里我们介绍go语言处理xml数据。 “encoding/xml” 包实现了一个简单的xml 1.0解析器,可以理解xml名称空间。

示例:

示例:

https://studygolang.com/pkgdoc

这一部分还是不能照原文翻译,下面有些内容是我自己写的)为了让你的解析器能够明白这些字符,你必须在xml文档中统一的字符编码标准。--------------------------------------------------------------------------------windows

95/98

记事本

windows

95/98

记事本不能以unicode的编码格式保存文件。可以使用记事本来编辑和保存包含了外文字符的xml文档

(比如:挪威语或者法语或者中文)小奀小林晚上一起去火锅呀但是如果你用浏览器打开这个用记事本编辑过的xml文档,将会出现一个错误。--------------------------------------------------------------------------------在windows

95/98

记事本中使用编码

windows

95/98

记事本编辑xml文件必须进行编码属性设置。

为了避免发生错误,可以在xml文档声明中加上一个encoding属性,指明此xml文档的编码类型,但是不要使用unicode编码。

下面的编码类型不会导致错误,,

并且汉字显示正常:下面的编码类型不会导致错误,,

并且汉字显示正常:下面的编码类型不会导致错误,,

并且汉字显示不正常(乱码):下面的编码类型不会导致错误,,

并且汉字显示不正常(乱码):下面的编码类型不会导致错误,,并且汉字显示正常:下面的编码类型会导致错误,:--------------------------------------------------------------------------------使用windows

2000

记事本

windows

2000

记事本可以以unicode编码格式保存文件。windows

2000

的记事本支持unicode字符集。如果使用win2000的记事本以unicode的编码格式保存xml文档(请注意这里在xml声明中没有编码信息):小奀小林晚上一起去火锅呀--------------------------------------------------------------------------------windows

2000

记事本编码

windows

2000记事本还可以以"utf-16"编码格式保存文件。如果你在xml文档中声明了编码属性而又以unicode编码格式保存文件,将可能发生错误。下面的代码将会导致错误:下面的代码将会导致错误:下面的代码将会导致错误:下面这个文件

note_encode_utf16_u.xml,

将会在ie5.0+中显示正常,在网景netscape

6.2浏览器中将会出现错误。--------------------------------------------------------------------------------错误信息

当时用ie5.0或者更高版本浏览xml文档时,可能会遇到两中不同的编码错误:在文本内容中发现一个非法字符(an

invalid

character

was

found

in

text

content)。如果你的xml文档和你的xml文档的编码格式不匹配就可能导致错误发生。通常情况是,xml文档包含一些“非英文”字符,并且使用了单字节编码的编辑器,而且没有在xml文档的声明中设置xml文档的编码格式。

不支持从当前的编码格式转换成另一种编码格式(switch

from

current

encoding

to

specified

encoding

not

supported)。如果xml文档以unicode/utf-16编码格式保存,但是xml文档的声明中却设置了编码格式是一些单字节的编码(比如

windows-1252,

iso-8859-1

或者

utf-8);或者xml文档以单字节编码格式保存,但是xml文档的声明中却设置了编码格式是一些unicode/utf-16的编码形式,这样两种情况都会导致错误发生。--------------------------------------------------------------------------------结论

结论:在保存xml文档之前在xml文档的声明中设置文档的编码格式,我的一些关于避免错误发生的建议:使用一种支持unicode编码格式的编辑器。

确信你知道自己正在使用那种编码格式。

因为项目做数据集,把图片放在以中文名命名的文件夹中,导致进行数据扩充时报错。

如图,之前红框内的是中文名,现在要改成英文

修改思路:

1.打开放xml的文件夹

2.获取相应节点标签的值

3.对值进行更改,其中路径更改使用正则替换

4.保存xml文件