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 기본 튜토리얼 칼럼을 주목해주세요.
위 내용은 XML 작성 시 Java의 중국어 왜곡 코드에 대한 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!