首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >StAX - writeCharacters(),如何不转义汉字、日语字符?

StAX - writeCharacters(),如何不转义汉字、日语字符?
EN

Stack Overflow用户
提问于 2010-12-06 23:27:57
回答 1查看 1.3K关注 0票数 0

XMLStreamWriter#writeCharacters(.)

writeCharacters(.)方法用于转义字符,如&、<、>和".“(来自http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/2.0/tutorial/doc/StAX4.html)

但是,当我编写一些中文、日语字符时,输出的XML文件不是用"UTF-8“编码的,而是"GBK”或"Shift-JIS“。汉字、日文也是转义的,就像

汉语,英语,にほんご“--->”汉语,英语,にほんご

有什么要解决的吗?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public static void main(String[] args) throws Exception {  
    // GBK  
    System.out.println("JVM default charset = " + Charset.defaultCharset());  

    String s = "汉语, English, にほんご";  

    XMLOutputFactory output = XMLOutputFactory.newInstance();  
    output.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, false);  

    OutputStream out = new FileOutputStream("C:/aa.txt");  
    XMLStreamWriter writer = output.createXMLStreamWriter(out, "UTF-8");  
    // When output encoding is "UTF-8", result is something like:  
    // <?xml version='1.0' encoding='UTF-8'?><a>汉语, English, にほんご</a>  

    // When output encoding is "GBK", result is something like:  
    // <?xml version='1.0' encoding='GBK'?><a>&#x6c49;&#x8bed;, English, &#x306b;&#x307b;&#x3093;&#x3054;</a>  

    writer.writeStartDocument();  
    writer.setDefaultNamespace("http://c");  
    writer.writeStartElement("http://c", "a");  

    writer.writeCharacters(s);  
    writer.writeEndElement();  
    writer.flush();  
}  
EN

回答 1

Stack Overflow用户

发布于 2010-12-06 23:36:42

当您创建作者时,用户XMLOutputFactory.createXMLEventWriter(stream, "UTF-8")。我相信这能解决你的问题。

我没有使用这个特定的API,但是我使用了很多其他的API。例如,如果编码不支持字符,则由Properties.store()方法自动进行转义。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4374260

复制
相关文章
汉字的URL转义字符函数
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/129648.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/29
1.5K0
python字符串转义字符_python 转义
上图中因为python不知到如何处理一对单引号之后的内容,不能识别第三个单引号。(默认都是以一对单引号或双引号来表示字符串从结束到开始。)
全栈程序员站长
2022/11/01
7.2K0
python字符串转义字符_python 转义
python 字符转义(url中文转义)
大家好,又见面了,我是你们的朋友全栈君。URL特殊字符需转义 1、空格换成加号(+) 2、正斜杠(/)分隔目录和子目录 3、问号(?)分隔URL和查询 4、百分号(%)制定特殊字符 5、#号
全栈程序员站长
2022/07/29
8K0
Java转义字符
定义 转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。 常见转义字符表 Java中需要转义的字符 在Java
Java架构师必看
2021/07/16
6.1K0
Python 转义字符
有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。如:
周小董
2019/03/25
3.8K0
HTML转义字符:xss攻击与HTML字符的转义和反转义
转义只是防止xss攻击的一种手段之一,更多请查看:《web开发前端安全问题总结——web前端安全问题汇总》
周陆军博客
2022/06/25
11.5K0
Python 转义字符
\' 单引号 \" 双引号 \t 制表符 \n 换行符 \ 倒斜杠
py3study
2020/01/10
4.3K0
小议转义字符
给小伙伴们简单的补充下转义字符相关的知识,在Java中的字母前面加上反斜线"\"来表示常见的那些不能显示的ASCII字符,我们称之为转义字符。如\0,\t,\n等,就称为转义字符。那么我们来看看下面这个例子: 假如你想在输出时显示如下带引号的信息,你能编写如下所示的这条语句吗? System.out.println("老九君说:"小伙伴你好!""); 答案是肯定的:不能!因为这条语句有语法错误。编译器会认为第二个引号字符就是这个字符串的结束标志,而不知道如何处理剩余的字符。 为了解决这个问题,Java定
老九君
2022/03/15
3.9K0
JavaScript转义字符
转义字符是字符的一种间接表示方式。在特殊语境中,无法直接使用字符自身。例如,在字符串中包含说话内容。 "子曰:"学而不思则罔,思而不学则殆。""
用户3519280
2023/07/07
2310
C转义字符
1. C 常用的转义字符 1) \t :一个制表位,实现对齐的功能 2) \n :换行符 3) \\ :一个\ 4) \" :一个" 5) \' :一个' 6) \r :一个回车 printf("张无忌赵敏周\r芷若小昭"); 说明2. 应用实例 \t 制表位的使用 #include <stdio.h> void main(){ printf("北京\t上海\t广州\t深圳"); // 让控制台不退出 getchar(); } [在这里插入图片描述] \n 换行使用: #include <st
兮动人
2021/06/30
4K0
C转义字符
C转义字符
文章目录 1. C 常用的转义字符 2. 应用实例 3. 练习 1. C 常用的转义字符 \t :一个制表位,实现对齐的功能 \n :换行符 \\ :一个\ \" :一个" \' :一个' \r :
兮动人
2021/07/21
3.8K0
C转义字符
JS转义字符
1.用来防止字符串内容和程序的标点符号冲突 var a="来自\"星星\"的你"; 2.用来表示特殊的意义 1.\n   换行  2.\t   制表符   特殊: var path="C:\Windows\Temp";  问题:1.查找不到\w,自动去除    2.\t误翻译成制表符 解决:1.把替换成\    2.把替换为/ JavaScript转义符 转义序列 字符 \b 退格 \f 走纸换页 \n 换行 \r 回车 \t 横向跳格 (Ctrl-I) \' 单引号 \" 双引号 \\
十月梦想
2018/08/29
14.9K0
Python转义字符
有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。如:
狼啸风云
2019/03/20
3.9K0
Python转义字符
Python格式化字符串的替代符以及含义 符   号 说     明 %c 格式化字符及其ASCII码 %s 格式化字符串 %d 格式化整数 %u 格式化无符号整型 %o 格式化无符号八进制数 %x 格式化无符号十六进制数 %X 格式化无符号十六进制数(大写) %f 格式化浮点数字,可指定小数点后的精度 %e 用科学计数法格式化浮点数 %E 作用同%e,用科学计数法格式化浮点数 %g 根据值的大小决定使用%f活%e %G 作用同%g,根据值的大小决定使用%f活%e %p 用十六进制数格式化变量的地址 P
py3study
2020/01/13
4.1K0
python 字符串 转义_python转义字符怎么用
python的字符串控制,有时候自动转义会带来很多问题,比如文件路径因为转义变得有异常,json字符串塞进json串中之后,自动的对引号加转义斜杠等,整理一下踩的一些坑。
全栈程序员站长
2022/11/17
3.9K0
Python转义字符空格字符
FROM:http://www.w3cschool.cc/python/python-strings.html
py3study
2020/01/09
9.2K0
java转义字符之换行字符
我们知道,java代码中,\r和\n和\r\n都表示换行,当我们想输出“\n”时,如果直接写System.println(“\n”);是看不到任何东西的,因为其自动被转义为换行了。
全栈程序员站长
2022/09/08
9K0
java转义字符之换行字符
js 字符串转义 与取消转义
转义序列 字符 \b 退格(BS 或 ASCII 符号 0x08 (8)) \f 换页(FF 或 ASCII 符号 0x0C (12)) \n 换行(LF 或 ASCII 符号 0x0A (10)) \r 回车(CR 或 ASCII 符号 0x0D (13)) \t 水平制表符(HT 或 ASCII 符号 0x09 (9)) \' 单引号 \" 双引号 \& &(and)符号 \\ 反斜杠 es6中使用字符串模板  如何含有  \r  会被换行 这个时候如果不想换行可以使用 String.raw`a b
拿我格子衫来
2022/01/24
12.6K0
js 字符串转义 与取消转义
jekyll 如何转义字符
在使用jekyll去写博客的时候,有时候会输入双括号 或者是段html,但在jekyll默认会把对应的值赋到对应的字段占位上面,所以我们去想,如何去把这个输入做一个转义:
付威
2018/12/05
1.1K0
转义JavaScript特殊字符
大家可以举一反三,触类旁通,反正,双引号和单引号可以配合着使用,把我上面的案例看懂,你就能灵活的运用了。
IT工作者
2022/01/05
4.1K0

相似问题

日语vs汉字

10

如何转义日语字符?

12

不转义的XMLStreamWriter writeCharacters

40

PHP读取日语字符,将日语汉字转换成可读的形式

10

QLineEdit日语/汉字未显示

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文