• 技术文章 >Java >Java基础

    java写xml中文乱码解决方法

    尚2019-12-14 14:55:49原创1554

    用java写xml文件,发现写完后xml文件的中文就变成了乱码。

    解决办法:把xml文件的头部编码改为utf-8,StreamResult编码方式也改为utf-8,StreamResult类充当转换结果的持有者,可以为 XML、纯文本、HTML 或某些其他格式的标记。

    public String createXMLbyId(){
      
      Course c = courseService.getCourseById(17);
      
      try{
       //获取当前时间 (注意格式)
       SimpleDateFormat tempDate = new SimpleDateFormat("yyyy-MM-dd" + " " + "hh:mm:ss");
       String datetime = tempDate.format(new java.util.Date());
       
       FileOutputStream fo = new FileOutputStream("D:/Program Files/work space/sedu/WebRoot/static/apixml/qq.xml");
    
    
         PrintStream so = new PrintStream(fo,true,"utf-8");     //关键是这句:要用 带指定编码格式的 构造方法
    
    
       so.println("<?xml version=/"1.0/" encoding=/"utf-8/"?>");
       so.println("<root>");
       so.println("<version>1.0</version>");
       so.println("<datetime>"+datetime+"</datetime>");
       so.println("<company_id>SunLand</company_id>");
       so.println("<item_ids>");
       
       if(c!=null){
        so.println("<item>");
        so.println("<outer_id>"+c.getCourseId()+"</outer_id>");
        so.println("<title>"+c.getTitle()+"</title>");
        so.println("</item>");
       }
        so.println("</item_ids>");
        so.println("</root>");
        
        System.out.println("文件生成成功!");
        
     }catch(Exception e){
      e.printStackTrace();
      System.out.println("文件生成失败!");
     }
      
      return "fanfan";
     }

    更多java知识请关注java基础教程栏目。

    以上就是java写xml中文乱码解决方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java 乱码
    上一篇:java中不等于怎么表示 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • java怎么安装• java判断文件不存在就创建的方法• java判断是否int类型的方法• java导出文件出现文件名乱码解决方法
    1/1

    PHP中文网