Java写入字符串再进行读取出现乱码

时间:2023-02-10 11:12:39

    今天在研究怎么将实体类转为document,花了一个下午,整体思路是先将实体类利用反射转化为xml字符串,再将字符串转化为InputStream流,再调用SAXDreader的read(InputStream in)方法获取document对象。

    但是在实现过程中碰到了一个问题。

    因为需要将xml字符串转化为InputStream流,我就先将xml字符串保存到一个文件中,再进行读取文件获得InputStream,感觉没毛病

    但是在读取文件中,出现了乱码,打印了结果之后发现总是第一个字符出现乱码,网上查了资料发现是BOM这种类似头文件的东西。

    刚开始我以为就是这玩意导致我读取乱码,其实不是。

   原因就在于写入和读取的编码不一致