相关文章推荐
打盹的板栗  ·  前端传递JSON数组数据到后端(解析方法)_ ...·  3 周前    · 
冷冷的草稿本  ·  txt文件转数组_python读取txt为数组·  3 周前    · 
淡定的盒饭  ·  ASP.NET 核心 Blazor ...·  3 周前    · 
傻傻的馒头  ·  STRING_SPLIT ...·  3 周前    · 
坚韧的啤酒  ·  表达式和函数 - Azure Data ...·  2 周前    · 
失眠的玉米  ·  Git的gc功能 - QIYUEXIN - 博客园·  2 年前    · 
安静的小熊猫  ·  powerbi按条件求和-掘金·  2 年前    · 
忐忑的眼镜  ·  excel均方根误差公式-哔哩哔哩_Bili ...·  2 年前    · 
开心的保温杯  ·  00641 ssh read error ...·  2 年前    · 
Code  ›  java bufferedwriter 编码_BufferedWriter.write()写中文乱码的解决办法开发者社区
string
https://cloud.tencent.com/developer/article/1810355
讲道义的手链
2 年前
作者头像
用户7886150
0 篇文章

java bufferedwriter 编码_BufferedWriter.write()写中文乱码的解决办法

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > bit哲学院 > java bufferedwriter 编码_BufferedWriter.write()写中文乱码的解决办法

java bufferedwriter 编码_BufferedWriter.write()写中文乱码的解决办法

作者头像
用户7886150
修改 于 2021-04-08 11:05:49
1.4K 0
修改 于 2021-04-08 11:05:49
举报

参考链接: Java BufferedWriter类

在用BufferedReader和BufferedWriter读写文件的过程中,发现写的文件中如果含有中文字符会有乱码的情况。

假设想把http://www.baidu.com百度首页的内容替换为自己想自定义的内容,代码如下:

/**

* 通过网页URL获取源码

* @param getUrl

*/

public static void catchHtmlCode(String getUrl){

String filePath = "D:/test/test.html";

BufferedReader buffreader = null;

BufferedWriter writer = null;

try {

URL u = new URL(getUrl);

URLConnection connection = u.openConnection();

InputStream inputStream = connection.getInputStream();

buffreader = new BufferedReader(new InputStreamReader(inputStream, "utf-8"));

StringBuffer buff = new StringBuffer();

String line;

while (null != (line = buffreader.readLine())) {

buff.append(line);

}

String html = buff.toString();

Document doc = Jsoup.parse(html);

Element body = doc.body();

Element div = body.select(".head_wrapper").first();

/*替换指定的html标签内容*/

div.html("

我已将指定的html标签内容替换为空");

writer = new BufferedWriter(new FileWriter(filePath, false));

writer.write(doc.html());

writer.flush();

} catch (Exception e) {

e.printStackTrace();

}finally {

FileUtils.closeStream(buffreader);

FileUtils.closeStream(writer);

}

}

当我们使用以下方式创建流时,可能会出现中文乱码,(程序断点查看获取到的中文字符没有乱码,是写完文件之后打开乱码,那就和具体生成文件默认打开编码设置有关)

writer = new BufferedWriter(new FileWriter(filePath, false));

所以我们可以在创建流的时候指定编码,如下:

writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(filePath)),"utf-8"));

这样就解决了乱码的问题。也可以设置为“GBK”等格式,看自己需求。

运行结果:

public static void main(String[] args) {

catchHtmlCode("http://www.baidu.com");

}

原文作者技术博客:https://www.jianshu.com/u/ac4daaeecdfe

95后前端妹子一枚,爱阅读,爱交友,将工作中遇到的问题记录在这里,希望给每一个看到的你能带来一点帮助。

欢迎留言交流。

本文系转载, 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

php
html
编程算法
c++

本文系 转载 , 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

php
html
编程算法
c++
评论
登录 后参与评论
0 条评论
热度
最新
登录 后参与评论
关于作者
用户7886150
0
文章
0
累计阅读量
0
获赞
前往专栏
领券
  • 社区

    • 专栏文章
    • 阅读清单
    • 互动问答
    • 技术沙龙
    • 技术视频
    • 团队主页
    • 腾讯云TI平台
  • 活动

    • 自媒体分享计划
    • 邀请作者入驻
    • 自荐上首页
    • 技术竞赛
  • 资源

    • 技术周刊
    • 社区标签
    • 开发者手册
    • 开发者实验室
  • 关于

    • 社区规范
    • 免责声明
    • 联系我们
    • 友情链接

腾讯云开发者

扫码关注腾讯云开发者

扫码关注腾讯云开发者

领取腾讯云代金券

热门产品

  • 域名注册
  • 云服务器
  • 区块链服务
  • 消息队列
  • 网络加速
  • 云数据库
  • 域名解析
  • 云存储
  • 视频直播

热门推荐

  • 人脸识别
  • 腾讯会议
  • 企业云
  • CDN加速
  • 视频通话
  • 图像分析
  • MySQL 数据库
  • SSL 证书
  • 语音识别

更多推荐

  • 数据安全
  • 负载均衡
  • 短信
  • 文字识别
  • 云点播
  • 商标注册
  • 小程序开发
  • 网站监控
  • 数据迁移

Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有

深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569

腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287

问题归档 专栏文章 快讯文章归档 关键词归档 开发者手册归档 开发者手册 Section 归档

Copyright © 2013 - 2023 Tencent Cloud.

All Rights Reserved. 腾讯云 版权所有

登录 后参与评论
 
推荐文章
打盹的板栗  ·  前端传递JSON数组数据到后端(解析方法)_element-china-area-data 前端json数组怎么转换成字符串传到后端
3 周前
冷冷的草稿本  ·  txt文件转数组_python读取txt为数组
3 周前
淡定的盒饭  ·  ASP.NET 核心 Blazor 渲染性能最佳做法 | Microsoft Learn
3 周前
傻傻的馒头  ·  STRING_SPLIT (Transact-SQL) - SQL Server | Microsoft Learn
3 周前
坚韧的啤酒  ·  表达式和函数 - Azure Data Factory & Azure Synapse | Microsoft Learn
2 周前
失眠的玉米  ·  Git的gc功能 - QIYUEXIN - 博客园
2 年前
安静的小熊猫  ·  powerbi按条件求和-掘金
2 年前
忐忑的眼镜  ·  excel均方根误差公式-哔哩哔哩_Bilibili
2 年前
开心的保温杯  ·  00641 ssh read error connection reset by peer session aborted-掘金
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号