java 数据写入txt乱码_java写入文件是乱码
java写入文件是乱码
我们读取、写入文件流时,经常会遇到乱码的现象,造成乱码的原因当然不可能是一个,这里主要介绍因为文件编码格式而导致的乱码的问题。首先,明确一点,文本文件与二进制文件的概念与差异。
文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码、ANSI编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自定义编码。)
因此可以看出文本文件基本上是定长编码的(也有非定长的编码如UTF-8)。而二进制文件可看成是变长编码的,因为是值编码嘛,多少个比特代表一个值,完全由你决定。
具体操作如下:
通过文件指定的格式写入文件/**
* 按照指定的路径和编码格式保存文件内容,这个方法因为用到了字符串作为载体,为了正确写入文件(不乱码),只能写入文本内容,安全方法
*
* @param data
* 将要写入到文件中的字节数据
* @param path
* 文件路径,包含文件名
* @return boolean
* 当写入完毕时返回true;
*/
public static boolean writeFile(byte data[], String path , String code){
boolean flag = true;
OutputStreamWriter osw = null;
try{
File file = new File(path);
if(!file.exists()){
file = new File(file.getParent());
if(!file.exists()){
file.mkdirs();
}
}
if("asci".equals(code)){
code = "GBK";
}
osw = new OutputStreamWriter(new FileOutputStream(path),code);
osw.write(new String(data,code));
osw.flush();
}catch(Exception e){
e.printStackTrace();
log.info("toFile IO Exception:"+e.getMessage());
flag = false;
}finally{
try{
if(osw != null){
osw.close();
}
}catch(IOException e){
e.printStackTrace();
log.info("toFile IO Exception:"+e.getMessage());
flag = false;
}
}
return flag;
}
php中文网,大量的免费Java入门教程,欢迎在线学习!
java 数据写入txt乱码_java写入文件是乱码相关推荐
- 解决java web中safari浏览器下载后文件中文乱码问题
解决java web中safari浏览器下载后文件中文乱码问题 参考文章: (1)解决java web中safari浏览器下载后文件中文乱码问题 (2)https://www.cnblogs.com/ ...
- java输出到txt 换行_Java输出到txt文件时如何加换行符
Java输出到txt文件时如何加换行符 时间:2017-09-18 来源:华清远见JAVA学院 知道Java输出到txt文件时如何加换行符吗?今天华清Java学院小编就和大家分享三种Java输 ...
- java输出到txt 换行_java输出到TXT文件时肿么加换行?
java输出到txt的时候增加换行符的方法如下: package com.anjoyo.test; import java.io.FileWriter; import java.io.IOExcept ...
- java下载乱码怎么解决_java下载文件出现乱码怎么解决
java下载文件出现乱码怎么解决 发布时间:2020-06-24 13:12:27 来源:亿速云 阅读:108 作者:Leah 这期内容当中的小编将会给大家带来有关java下载文件出现乱码的解决方法, ...
- php 写入txt换行_php 写入txt文件内容换行的方法
今天在利用 php 脚本写一个关于写入 txt 文件内容换行的逻辑时,发现其中的学问挺大的,下面就来详细的来说一下,有需要的就拿去吧.在不同的系统下,txt 文件的换行符是不一样的,比如: windo ...
- java printstream 中文乱码_JAVA的中文字符乱码问题
JAVA的中文字符乱码问题一直很让人头疼.特别是在WEB应用中.网上的分析文章和解决方案都很多,但总是针对某些特定情况的.很多次遇到乱码问题后, 经过极为辛苦的调试和搜索资料后终于解决,满以为自己已经 ...
- java图片上传下载_java web 文件上传与下载
组件工作流程:WEB服务器request ServletFil eupLoad DiskFileItem Factory代表普通字段的FileItem代表上传文件1FileItem代表上传文件2Fil ...
- java 数据转成xml_java转换CSV文件生成xml格式数据
注册CSDN快六个月了,之前一直是看园子里的文章,或者碰到问题时,进来查点资料,今天终于决定写一篇自己在园子里的blog. 好吧,鉴于水平太菜,就只记录过程,其中原理啥的并不是很明晰,所以此blog只 ...
- java连接mysql乱码_java链接mysql 中文乱码
{转!} 背景: 由于最近在开发一个APP的后台程序,需要Java连接远程的MySQL数据库进行数据的更新和查询操作,并且插入的数据里有中文,在插入到数据库后发现中文都是乱码.网上查了很多教程,最后都 ...
最新文章
- 详解Linux交互式shell脚本中创建对话框实例教程
- day4 Activity相关
- 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)
- 7小时44分最佳,睡多睡少都不好,养成习惯也没用
- python收取wss数据_Python金融应用之提取交易日+合并截面数据
- 聊几个与赚钱相关的小事情
- c++循环执行一个函数_20川大计算机 | 时间复杂度,你避不开的一个考点
- OpenCL(CUDA5.0) + Visual Studio 2010 环境配置
- android keyboard用法,react-native-android-keyboard-adjust 最新使用方法 0.63
- 【实习项目记录】(四)Android 实现手机验证时,按钮倒计时60s
- 西瓜哥:公有云也“All-Flash”?
- 【安卓项目】—— 口算测试APP(教程源自B站)
- java ADT的简单介绍
- MSDN 离线版 支持VS2015 VS2017 VS2019 (镜像本地安装,非目录替换法)
- matlab-FCM模糊聚类
- 如何把html网页共享文件夹,如何将文件夹共享 设置共享文件夹教程【详细介绍】...
- 奇虎360历届笔试面试题汇总
- 【网络与信息安全】 2019年-中国计算机学会推荐国际学术会议和期刊目录(三)
- c++镇国之争游戏(带存档,无bug)
- 【算法】 二叉树遍历
热门文章
- xssgame第九关至第十关
- 使用OpenBTS基站测试物联网模块安全性
- django+vue+nginx+frp搭建漫画网站之接入谷歌统计和百度统计(三)
- 易友八字合婚系统发布(支持同性基友拉拉兼容)1.01发布
- 在高分辨率屏幕上用VMware运行ubuntu显示过小的问题
- 在vop中重构transform节点(一)
- mysql dbms是什么_DBMS体系结构的三种类型分别是什么
- 计算机考研最简单的专业,计算机专业有必要考研吗?计算机考研简单的校园都有哪些...
- ICC2: secondary pg pin的作用与连接
- Apache 开启和关闭 Keep-Alive 解决访问长连接问题