java转码,java转码gbk

本文目录一览:

java如何把string转为utf-8

java不同编码之间进行转换,都需要使用unicode作为中转。

String str = “任意字符串”;

str = new String(str.getBytes(“gbk”),”utf-8″);

备注说明:

str.getBytes(“UTF-8”); 意思是以UTF-8的编码取得字节

new String(XXX,”UTF-8″); 意思是以UTF-8的编码生成字符串

举例:

public static String getUTF8XMLString(String xml) {

// A StringBuffer Object

StringBuffer sb = new StringBuffer();

sb.append(xml);

String xmString = “”;

String xmlUTF8=””;

try {

xmString = new String(sb.toString().getBytes(“UTF-8”));

xmlUTF8 = URLEncoder.encode(xmString, “UTF-8”);

System.out.println(“utf-8 编码:” + xmlUTF8) ;

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

// return to String Formed

return xmlUTF8;

扩展资料:

UTF-8编码规则:

如果只有一个字节则其最高二进制位为0;如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的字节数,其余各字节均以10开头。

实际表示ASCII字符的UNICODE字符,将会编码成1个字节,并且UTF-8表示与ASCII字符表示是一样的。所有其他的UNICODE字符转化成UTF-8将需要至少2个字节。每个字节由一个换码序列开始。第一个字节由唯一的换码序列,由n位连续的1加一位0组成,首字节连续的1的个数表示字符编码所需的字节数。

Unicode转换为UTF-8时,可以将Unicode二进制从低位往高位取出二进制数字,每次取6位,如上述的二进制就可以分别取出为如下示例所示的格式,前面按格式填补,不足8位用0填补。

参考资料来源:百度百科:UTF-8

java怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串

通过JDK1.6知道String类中getBytes(”编码“)方法可以讲一个数用指定的编码转成一个字节数组,String中通过指定的 charset解码指定的 byte 数组,构造一个新的 String。代码如下:

try{

String s = “java学习”;

System.out.println(s);

String result = new String(s.getBytes(“GB2312″),”iso-8859-1”);

System.out.println(s);

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

扩展资料:

getBytes() 方法有两种形式:

1、getBytes(String charsetName): 使用指定的字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。

2、getBytes(): 使用平台的默认字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。

参考资料:

百度百科-getBytes()

java 转码问题

看我这个,是本人原创。不管你是任何编码都可以解决,唯一的缺点是效率稍微低了点(不过比楼上那个要快)。

思路:

1.首先在jsp页面即客户端用JavaScript将汉字处理成asc码

2.服务端再将asc码还原成原有的字符

JavaScript转换代码:

var s=document.getElementById(“text”).value;

var t=””;

//将汉字转换成ASCII码,然后在服务器端里再根据ASCII码转换成相应的字符

for(i=0;is.length;i++){

t+=s.charCodeAt(i)+” “;//将字符转换成相应的ASCII码并用空格隔开;

}

java服务端还原:

String param=request.getParameter(“param”);

StringBuffer buf=new StringBuffer(“”);

String[] ss = param.split(” “);

for (int i = 0; i ss.length; i++) {

char c = (char) Integer.parseInt(ss[i].trim());

buf.append(c);

}

System.out.println(“还原后的字符是:”+buf.toString());

———————-

如果你再把转换后的asc码再加个数字或者减个数字就是一个简单的加密,O(∩_∩)O~,希望对你有所帮助

java文件读取内容转码

读取的文件流如果是read(读取字节流的时候,中文就会是乱码)方法,所以现在全都是听过readline方式进行的读取。举例:

可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。

BufferedReader bre = null;

try {

String file = “D:/test/test.txt”;

bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流

while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环

{

System.out.println(str);//原样输出读到的内容

};

bre.close(),//关闭流,否则bre流会一直存在,直到程序运行结束。

除此之外,java文件读取的时候有中文就很出现乱码,通常获取到的文件中通常都是“iso8859-1”格式,需要转换为“UTF-8”格式。

如:String str = new String(str.getByte(“iso8859-1”),”UTF-8″);进行下强制转换后在进行读取即可。

备注:通常格式有GBK、UTf-8、iso8859-1、GB2312,如果上面的强制转换不成功,依次进行这些格式的尝试,肯定是可以解决问题的。

java 怎么gbk转码utf-8

方法一:

思路:先转为Unicode,然后转为GBK

String utf8 = new String(t.getBytes( “UTF-8”));  

System.out.println(utf8);  

String unicode = new String(utf8.getBytes(),”UTF-8″);   

System.out.println(unicode);  

String gbk = new String(unicode.getBytes(“GBK”));  

  

System.out.println(gbk);

方法二:

public static void main(String[] args) {

        String str=”字符串编码转换”;

        try {

          byte[] temp=str.getBytes(“utf-8”);//这里写原编码方式

            byte[] newtemp=new String(temp,”utf-8″).getBytes(“gbk”);//这里写转换后的编码方式

            String newStr=new String(newtemp,”gbk”);//这里写转换后的编码方式

            System.out.println(newStr);

        } catch (UnsupportedEncodingException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/162632.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-21 22:46
下一篇 2024-11-21 22:46

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Java 8 Group By 会影响排序吗?

    是的,Java 8中的Group By会对排序产生影响。本文将从多个方面探讨Group By对排序的影响。 一、Group By的概述 Group By是SQL中的一种常见操作,它…

    编程 2025-04-29

发表回复

登录后才能评论