jaxb读有BOM的XML文件问题】的更多相关文章

一开始找了半天没找到什么原因,读文件就报错: Content is not allowed in prolog 后来发现是文件是UTF-8带BOM和不带BOM的问题 问题就好解决了,直接读带BOM文件的时候去掉第一个字符就解决了. StringReader reader = new StringReader(xml.substring(1)); return (T) createUnmarshaller().unmarshal(reader); 详见: http://www.rgagnon.co…
測试样例: Java读取UTF-8的txt文件第一行出现乱码"?"及解决 test.txt文件内容: 1 00:00:06,000 --> 00:00:06,010 <b>Allerleirauh</b> (2012) <i>dTV - Das Erste - 20. Januar 2013</i> 2 00:00:10,280 --> 00:00:12,680 Was geh?rt zu einer guten Suppe?…
原因: 关于utf-8编码的txt文件,windows以记事本方式保存时会在第一行最开始处自动加入bom格式的相关信息,大概三个字节! 所以java在读取此类文件时第一行时会多出三个不相关的字节,这样对正常的程序产生了不良影响! 解决方法: 网上有如下解决方法确实可行 1.使用UltraEdit将上边的txt文件另存为UTF-8无BOM格式: 2.使用Notepad++打开上边的txt文件执行如下操作"格式-->以UTF-8无BOM格式编码",修改后将txt文本进行保存 不足之处…
最近写一个题目,要求将一组员工实体类转换成xml文件,或将xml文件转换成一组实体类.题目不难,但写完感觉可以利用泛型和反射将任意一个实体类和xml文件进行转换.于是今天下午立马动手 试了下,做了个简单的模型,可以将简单的实体类和xml文件进行相互转换,但对实体类的属性类型有限制,目前只支持String, Integer, Double三种类型.但是后面可以扩展. 我的大概思路是这样的,只要能拿到实体类的类型信息,我就能拿到实体类的全部字段名称和类型,拼属性的set和get方法更是简单明了,这时…
2012-05-01 Created By BaoXinjian…
linq的出现,带给我们的是简结,快速,可读性,它由linq to sql,linq to object,linq to XML组成,我的博客之前有对linq to sql的讲解,而今天,我将讲一个linq to xml架构,将对于操作XML文件进行读写操作,它会让你像使用linq to sql一样,操作你的xml文件,OK,我们来看一下,下面的一个XML文件. <?xml version="1.0"?> <ArrayOfDataSync xmlns:xsi=&quo…
首先下载oxygen软件(Oxygen XML Editor),目前使用的是试用版(可以安装好软件以后get trial licence,获得免费使用30天的权限,当然这里鼓励大家用正版软件!!!) 1 首先建立一个空白XML文件,直接点击下图所示即可: 2 可以使用xml文本编辑界面,或者使用xml树状图编辑界面 切换到xml树状图编辑界面的方法为: 即可调出当前xml文件所对应的xml树状图编辑界面 3 设计并编辑xml文件 根据自己的需要可以利用xml树状图操作界面来方便的设计自己的xml…
前面一章简单演示了JAXB的用法,这个章节主要梳理一下JAXB常见的几个注解 1.@XmlRootElement 用于类级别的注解,对应xml的跟元素,常与 @XmlType 和 @XmlAccessorType一起使用,主要的作用是映射xml的根节点 2.@XmlElement 将Java对象的属性映射为xml的节点,在使用@XmlElement时,可通过name属性改变java对象属性在xml中显示的名称. @XmlElement(name="class") private Str…
  1.java中解析xml的几种方式 1.1 JDK原生dom形式 原理:一次性把xml读入内存,在内存中构建成树形结构.优点:对节点操作方便,缺点:需要大量的内存空间,浪费资源 1.2 SAX形式 原理:基于事件形式,当解析器发现元素开始.元素结束.文本.文档的开始或结束等时,发送事件,程序员编写响应这些事件的代码,保存数据.优点:相对于dom形式更快捷,占用资源少.缺点:没有持久话.事件过后,若没保存数据,那么数据就丢了. 1.3 DOM4J 它是一个开源的框架,具有性能优异.功能强大和极…
@Retention(value=RUNTIME) @Target(value=TYPE) public @interface XmlRootElement @Inherited @Retention(value=RUNTIME) @Target(value={PACKAGE,TYPE}) public @interface XmlAccessorType XmlRootElement: 将类或枚举类型映射到 XML 元素.JAXB中的注解,用来根据java类生成xml内容. 当使用 @XmlR…