问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java txt文件utf-8转GBK的问题

发布网友 发布时间:2022-04-26 14:31

我来回答

5个回答

热心网友 时间:2022-04-19 04:26

步骤一:直接把文件备份。

步骤二:打开文件,选择“另存为”。

步骤三:编码格式从“UTF-8"切换到“GBK”(默认)。保存即可。

热心网友 时间:2022-04-19 05:44

package com.mkyong;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

public class UTF8ToGBK {
public static void main(String[] args) throws Exception {

File fileDir = new File("/home/user/Desktop/Unsaved Document 1");

BufferedReader in = new BufferedReader(new InputStreamReader(
new FileInputStream(fileDir), "UTF-8"));

String str;

while ((str = in.readLine()) != null) {
System.out.println(str);// java内部只有unicode编码 所以str是unicode编码
String str2 = new String(str.getBytes("GBK"), "GBK");// str.getBytes("GBK")是gbk编码,但是str2是unicode编码
System.out.println(str2);
}

in.close();
}
}

 问题的关键是new String(xxx.getBytes("gbk"), "gbk")这句话是什么意思,xxx.getBytes("gbk")是GBK编码,所以java是不能够正确输出的,因此必须通过new String(xxx.getBytes("gbk"), "gbk")把xxx.getBytes("gbk")的GBK编码变成unicode编码,因此你要的GBK就是str.getBytes("GBK")这就是GBK编码,不过你是不能够输出的,因此java不支持输出GBK

String fullStr = new String(str.getBytes("UTF-8"), "UTF-8");//正常
String fullStr2 = new String(str.getBytes("UTF-8"), "GBK");//不正常,编码不一致UTF-8的编码怎么能够解读为 GBK

看一下jdk文档是怎么说的

public String(byte[] bytes,
      Charset charset)

Constructs a new String by decoding the specified array of bytes using the specified charset.

str.getBytes("GBK")

应该就是你要传递给接口的

那现在的问题就是,我怎么在String中持有GBK编码的东西呢?

String str3 = new String(str.getBytes("GBK"),"ISO-8859-1");
System.out.println(new String(str3.getBytes("ISO-8859-1"),"GBK"));

str3就是可以传递给后台的的字符串

热心网友 时间:2022-04-19 07:19

网页链接这个链接可以解决,本人博客!!!

热心网友 时间:2022-04-19 09:10

转换ISO-8859-1然后再转GBK

热心网友 时间:2022-04-19 11:18

最简单的办法,就是把你的文件另存为UTF-8呗~~
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
QQ空间代码不用了。怎么回原? 怎样才能把我的QQ空间变回原样啊~~~(我乱用代码的后果~555555~~) 小的的意思是什么 ...中,硫元素的化合价最高的是( )A.SO2B.H2SO4C.H2SD.Na2SO ...中硫元素化合价相同( )A.S、SO2B.SO2、H2SO4C.H2S、H2SO4D.SO3... 下列硫的单质和化合物中,硫元素的化合价是+4的是( )A.SB.SO2C.H2SD... 下列化合物中,硫元素的化合价为+4价的是( )A.H2SB.SO2C.SO3D.H2SO 下列化合物中,硫元素的化合价为+4价的是( )A.CaSO4B.H2SC.Na2SO3D... ...元素的化合价为+4价的是( )A.SO2B.H2SC.SO3D.H2SO 梦幻西游:三界功绩有什么用?原来有这么多用处 python2.7 utf-8转gbk 乱码 java怎么把UTF-8字符串转成GBK字符串? Python2.7为什么Utf-8到GBK会变成乱码 java中UTF-8转GBK为什么不会出现中文乱码? 为什么我的程序重uft转到gbk变成了乱码啊 平安保险的重要性 人寿保险到底是什么? 请问一道菜? 牛油果馒头的做法步骤图,牛油果馒头怎么做 烙饼牛油果酱怎么做 女人多吃哪种“天然的黄体酮”,养颜护肤比化妆品还有效? 鳄梨没熟皮削掉了要怎么样才能保存? 削好的牛油果能隔夜吃吗? 怎么买到便宜的正品加拿大鹅? 加拿大鹅狼毛有长的好还是短毛的好? 惠普笔记本怎么在win10下安装win7双系统 为什么斩六将App不能导出错题 重庆道路从业资格证到期可以在重庆交通干部学校在线平台学习吗? 重庆网络教育学院是自考还是成考呀 重庆青年大学习有app吗 java utf 8转gbk utf8转gb2312乱码问题 两个项目之间通信碰到乱码怎么解决,utf-8和gbk可以直接转换么? 代码utf8转成gbk NSString的字符串,编码是UTF8格式,怎么转化成GBK格式 java怎么把UTF-8字串转成GBK字串? 无法把一个大文件复制到U盘里,请问高手怎么解决??、急求 签订证券交易代理协议时应当关注哪些条款 签订证券交易代理协议时应当关注哪些条款? 证券公司资管和自营是否需要分别签署《深圳证券交易所债券质押式协议回购交易主协议(2021年版)》? 证券回购协议是如何避免违约风险的 《深圳证券交易所债券质押式协议回购交易主协议(2021年版)》的生效时间与签署安排是如何规定的? 在证券交易中,券商交易单元指的是什么? 股票质押式回购交易业务协议模版(两方,强制执行版) 糖心蛋的煮法,谁能告诉我下,7分8分熟就行啦 lpr下调5个基点是什么意思 中国央行下调基准利率25个基点,其中25个基点是什么意思,倒底是多少呢? 降息基点是什么意思 1年期存款 基准利率下调25个基点至2.75%.是什么意思 “利息下调五十个基点”这个基点指的是多少?转成百分比为百分之多少?