java bufferedwriter 编码,Java BufferedWriter对象与utf-8
大家好,又见面了,我是你们的朋友全栈君。
I have the following code and I want to make the outputstream use utf-8. Basically I have characters like é that appear as é so it looks like an encoding issue.
I’ve seen lots of examples that use…
OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(path),”UTF-8″);
My current code though is…
BufferedWriter out = new
BufferedWriter(new FileWriter(DatabaseProps.fileLocation + “Output.xml”));
Is it possible to define this object as UTF-8 without having to use the OutputStreamWriter?
Thanks,
解决方案
No. FileWriter doesn’t let you specify the encoding, which is extremely annoying. It always uses the system default encoding. Just suck it up and use OutputStreamWriter wrapping a FileOutputStream. You can still wrap the OutputStreamWriter in a BufferedWriter of course:
BufferedWriter out = new BufferedWriter
(new OutputStreamWriter(new FileOutputStream(path), StandardCharsets.UTF_8));
Or as of Java 8:
BufferedWriter out = Files.newBufferedWriter(Paths.of(path));
(Of course you could change your system default encoding to UTF-8, but that seems a bit of an extreme measure.)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140839.html原文链接:https://javaforall.cn
相关文章
- Java 0xffffffff隐式类型转换的坑
- java对象组声明_如何在Java中声明对象数组?
- java除零异常_JAVA异常处理
- IntelliJ IDEA CE 2022 Mac中文版(Java IDE集成开发软件)
- Java集合之ArrayList扩容机制
- java使用md5_Java_MD5的使用「建议收藏」
- java实现ajax_Ajax&Java
- java环境_Java基础篇——环境配置
- java uuid 随机数_Java随机数和UUID[通俗易懂]
- java中random方法取值范围_Java Random.nextInt()方法,随机产生某个范围内的整数
- Java递归详解_java难不难学
- 【Java】jar启动的java程序报错FileNotFoundException
- Java中日期处理的一些坑
- 坦白讲!做 Java 工程师,挺好!
- Java微服务框架一览详解架构师
- JAVA联网查询IP地址归属详解编程语言
- JAVA中线程同步的方法详解编程语言
- java多线程系列(八)—CountDownLatch和CyclicBarrie详解编程语言
- eeOracle放弃Java EE:梦想的终结(oracle放弃java)
- 利用Redis存储Java对象的方法(redis存储java对象)
- Java 多线程编程详解编程语言
- 服务器是否开机Java检查Linux服务器开机状态(java判断linux)
- 使用Java监听MySQL数据库变化(java监听mysql)
- Linux与Java结合,打造完美解决方案(linux和java)
- 进行操作学会使用Java玩转Redis(在java中队redis)