导航:首页 > 编程语言 > java转编码格式

java转编码格式

发布时间:2024-10-17 10:22:30

java中GBK编码格式转成UTF8,用一段方法实现怎么做

java中GBK编码格式转成UTF8编码格式的方法如下:

publicstaticvoidmain(String[]args)throwsThrowable{
StringerrStr="errStr";
System.out.println(recover(errStr));
}
publicstaticStringrecover(Stringstr)throwsThrowable{
returnnewString(str.getBytes("GBK"),"UTF-8");
}

其中errStr就是乱码字符串,按照相反的顺序在编码芦喊(用gbk)、解码(用utf-8)回去,就能得到正确的字符串.
GBK、UTF-8是一种“编码格式”,是用来序列化或存储“编号(数字含族)”的一种“格式”;GBK和UTF-8都是用来序列化或存储unicode编码的数据的,但是分别是2种不同的格式; 除了格式不一样之外,所关谈哗弊心的unicode编码范围也不一样,utf-8考虑了很多种不同国家的字符,涵盖整个unicode码表,所以其存储一个字符的编码的时候,使用的字节长度也从1字节到4字节不等;而GBK只考虑中文——在unicode中的一小部分——的字符,的编码,所以算好了只要2个字节就能涵盖到绝大多数常用中文(2个字节能表示6w多种字符),所以存储一个字符的时候,所用的字节长度是固定的;

㈡ Java代码编码格式

统一的代码格式在大型项目开发中至关重要,它能显着提升代码可读性与维护性。以下为Java代码编码格式的建议:

变量命名需遵循包名小写,用点分隔符连接自然语义的英语单词,包名单数形式,类名复数时可使用复数形式;抽象类名以Abstract或Base开头,异常类以Exception结尾,测试类以要测试的类名开始,以Test结尾。数组类型与中括号紧挨相连,枚举类带Enum后缀,枚举成员全大写,单词间用下划线隔开。

常量采用全大写、单词间下划线的命名方式,局部常量使用小驼峰形式。

推荐使用4个空格代替tab键。二目、三目运算符左右两侧需加空格,注释双斜杠与内容之间留空格,方法参数定义与传入时多个参数后加空格。大括号内空则直接写成{},大括号中间不换行,左小括号后须换行,左大括号前加空格且不换行。if与左侧小括号间需空格,else前后加空格。

单目运算符如+(正数)、-(负数)、++、--无空格。空行用于方法、属性、逻辑、语义、业务代码的分隔。第二行相对第一行缩进4个空格,从第三行开始不再缩进。换行遵循运算符与下文同行,方法调用的点符号与下文同行,多个参数换行时逗号后换行,括号前不换行。

在if、else、for、while、do-while等控制语句中必须使用大括号,即使是单一代码行也应加括号。条件表达式中避免赋值操作及复杂数学组合。嵌套层数不宜超过3层,超过3层的逻辑判断可使用卫语句、策略模式、状态模式等实现。避免使用取反逻辑运算符。

类上方注释需使用多行注释,注明作者与日期,日期在作者下一行,类说明解释在作者上一行且空一行。全局变量需多行注释,内容为一行使用斜杠两个星号和一个星号,多行内容使用斜杠星号和星号斜杠换行。方法注释使用多行注释,必须包含@param、@return注释,参数与注释之间空两格或在下一行加空行分隔。注释内容间需空两格或在下一行左对齐。方法内部注释使用双斜杠,多行注释使用多个双斜杠。

强制类型转换左括号前空一格,右括号后空一格。for循环中分号或冒号后空格。while、do-while语句后空一格。

以上代码格式化规则旨在提升Java代码的可读性和维护性,建议在开发过程中严格遵循。

㈢ Java中如何把GBK编码的字符串转成utf-8编码

我先解释一下我对你的问题的理解 :
你的问题有点笼统 可以这么理解两个意思 : 一 ,你是想吧一个gbk编码的字符串用utf-8格式来编码
String s = new String ("全国".getBytes("GBK"),"GBK");
虽然这个时候的s是GBK编码的 但是s还是中文字符的 所以 上面这位同胞用 new(s.getBytes("GBK"),"UTF-8")的方式肯定是错的 应该用 String s1 = new String (s.getBytes("UTF-8"),"UTF-8") 这样s1就是UTF-8编码的字符串了
二,如果是遇见乱码问题 比如 String s = new String ("全国".getBytes("GBK"),"GBK");
这样的s就是gbk编码的 现在你要把GBK格式的编码用UTF-8去编码 肯定就会出现乱码
String s2 = new String(s.getBytes("GBK"),"UTF-8"); 这个s2肯定是乱码的 而且这样就根本解不出来了 系统出现的乱码显示的时候才会出现编码错误 所以 一般出现乱码 只要把输入流换个编码解析一下就ok了 还有什么不明白 可以问我

㈣ java中接口编码格式为gb2312的,但是我们实现的类用的是utf-8的,之间怎么转换格式

看你的来源是什么编码 如果来源是gb2312 要转成utf-8

那么就是 String s1 = new String( s.getBytes("ISO8859-1"),"UTF-8" ) ;

㈤ java怎么把utf-8的字符串转换为gb2312格式

Java中字符串转码,根据实际运用的环境有以下三种方式

1、使用Java.lang.String

这是最常用的方法,先用对应编码获取字节,然后重新构造新编码,示例代码如下:

Strings="清山";
byte[]b=s.getBytes("utf-8");//编码
Stringsa=newString(b,"gb2312");//解码:用什么字符集编码就用什么字符集解码

2、java.io.InputStreamReader/OutputStreamWriter:桥转换

读写文件的应用中,可以使用这种方式,直接在IO流构造中转换,示例代码如下:

InputStreamis=newFileInputStream("C:/项目进度跟踪.txt");//文件读取
InputStreamReaderisr=newInputStreamReader(is,"utf-8");//解码
OutputStreamos=newFileOutputStream("C:/项目进度跟踪_gb2312.txt");//文件输出
OutputStreamWriterosw=newOutputStreamWriter(os,"gb2312");//开始编码

3、java.nio.Charset

使用nio中的Charset转换字符,示例代码如下:

CharsetinSet=Charset.forName("utf-8");//解码字符集
CharsetoutSet=Charset.forName("gb2312");//编码字符集
CharsetDecoderde=inSet.newDecoder();//解码器
CharsetEncoderen=outSet.newEncoder();//编码

阅读全文

与java转编码格式相关的资料

热点内容
大金空调怎么判断变频压缩机坏 浏览:255
安卓手机如何注册传说对决 浏览:951
自学应聘程序员 浏览:917
linux设置根目录 浏览:89
java向量空间模型 浏览:841
哪个app订餐便宜 浏览:672
有什么app可能存聊天记录 浏览:468
强国app中的纪录片在哪里 浏览:714
dell服务器可用什么样硬盘 浏览:636
javanewbyte 浏览:309
芯片app哪个好 浏览:751
文件夹名称laptop怎么去掉 浏览:247
单片机中断应用 浏览:622
搜狗app哪个好用 浏览:452
中信银行还完贷款什么时候给解压 浏览:233
ug自学编程入门 浏览:612
英语口语900句pdf 浏览:565
javabyte拼接 浏览:481
加密应用在哪里找vivo 浏览:290
python读写图像 浏览:289