`

Java获取URL中的汉字编码

    博客分类:
  • java
 
阅读更多
public class Encoder { 
    public static String Encode(String text, String Endocing) { 
        StringBuffer result = new StringBuffer(); 
        for (int i = 0; i < text.length(); i++) { 
            char c = text.charAt(i); 
            if (c >= 0 && c <= 255) { 
                result.append(c); 
            } 
            else { 
                byte[] b = new byte[0]; 
                try { 
                    b = Character.toString(c).getBytes(Endocing); 
                } 
                catch (Exception e) { 
                    e.printStackTrace(); 
                } 
                for (int j = 0; j < b.length; j++) { 
                    int k = b[j]; 
                    if (k < 0) 
                        k += 256; 
                    result.append("%" + Integer.toHexString(k).toUpperCase()); 
                } 
            } 
        } 
        return result.toString(); 
    } 

    public static String EncodeKeyWords(String Words, String Encoding) { 
        String Codes = ""; 
        String Word = ""; 
        int i = 0; 
        Words += ' '; 
        while (i < Words.length()) { 
            if (Words.charAt(i) != ' ') { 
                Word += Words.charAt(i); 
            } 
            else { 
                Codes += Encode(Word, Encoding) + '+'; 
                Word = ""; 
            } 
            i++; 
        } 
        Codes = Codes.substring(0, Codes.length() - 1); 
        return Codes; 
    } 

       使用时 Encoder.EncodeKeyWords("关键字", "GB2312") 即返回相应的编码,其中GB2312是百度所使用的,需要Google的编码时应改成"UTF-8"。

来自http://gaofeihang.blog.163.com/blog/static/84508285201021032631948/

分享到:
评论

相关推荐

    深入分析 Java 中的中文编码问题

    在Java编程语言中,中文编码问题是一个常见的挑战,尤其是在处理文本输入、输出或者网络通信时。本文将深入探讨Java中的中文编码问题,包括其原因、解决策略以及相关的API使用。 一、编码概述 编码是将字符(如中文...

    Java Http请求传json数据乱码问题的解决

    在实际解决乱码问题的过程中,如果发现使用Base64加密传输中文数据还会出现问题,可以改用URL编码的方式来传输数据,即使用JavaScript的`encodeURI`函数对数据进行两次URL编码,后端接收到后进行一次URL解码即可。...

    java如何正确使用字体编码

    为了确保从数据库中获取的数据能够被正确解析和显示,需要在建立数据库连接时指定字符编码。这可以通过在URL参数中加入`useUnicode=true`和`characterEncoding=`来实现。 ##### 使用UTF-8作为数据库字符编码 如果...

    彻底解决中文乱码的问题

    在IT行业中,尤其是在Java编程领域,中文乱码问题是一个常见的挑战。这主要涉及到字符编码的处理,涉及到Unicode、GBK、UTF-8等不同编码格式之间的转换和一致性问题。本篇文章将深入探讨这个问题,并提供一种彻底...

    JAVA得到汉字的拼音

    在Java编程语言中,获取汉字的拼音是一项常见的需求,特别是在处理中文字符串时,例如搜索、排序或者构建用户友好的URL。本篇文章将深入探讨如何利用Java实现这一功能,结合提供的两个源码文件`GB2Alpha.java`和`...

    Java编程中的中文问题.pdf

    Java编程中的中文问题主要围绕如何在Java程序中正确处理和显示中文字符,包括在不同环境下(如Windows、Linux、Web应用等)的编码转换问题,以及与数据库等外部系统交互时的字符编码问题。在Java开发中,由于Java采用...

    十六进制转汉字

    例如,使用GB2312编码,一个汉字可能被表示为两个连续的16进制数,而在UTF-8编码中,一个汉字可能是三个或四个16进制数。 "汉字十六进制转换工具.exe" 是一个应用程序,其功能就是将汉字转换成16进制表示,或者将16...

    Java WEB开发中的中文乱码问题解决方法.pdf

    Unicode编码旨在表示所有语言的字符,是一个16位的编码标准,可以说是字符编码中最统一的形式。UTF-8编码是一种可变长度的编码方式,它兼容ASCII,同时也支持包括中文在内的多种语言。 在Java Web开发中,字符编码...

    js解码 、java编码

    而在Java中,`java.nio.charset`包提供了许多类和接口,用于进行字符编码和解码,如`Charset`类可以用来获取和操作不同的字符集。 接下来是解码,它是编码的逆过程。在JavaScript中,你可以使用`decodeURI()`、`...

    关于Java Web中中文乱码问题的探讨.pdf

    在UTF-8编码中,英文字符用8位(1个字节)表示,而中文字符则使用24位(3个字节)编码。 ISO-8859-1编码,又称Latin1,是一种8位单字节编码方式,向下兼容ASCII编码,能够表示几乎所有欧洲语言字符。但需要注意的是...

    汉字转拼音(包含首字母)工具类

    在Java编程语言中,开发一个汉字转拼音(包含首字母)的工具类是一项常见的任务,尤其是在处理中文字符串、搜索引擎优化(SEO)或者构建用户友好的URL时。这个工具类可以帮助程序将汉字转换为对应的拼音表示,同时...

    自动获得汉字的拼音简码

    总之,自动获取汉字的拼音简码在Java Web开发中是一个实用的技术点,涉及对汉字编码的理解、第三方库的使用以及字符串处理技巧。通过学习和掌握这些知识,开发者可以更好地处理中文字符,提升应用的功能性和用户体验...

    java二维码生成器

    二维码是一种二维条形码,它将信息编码为黑白小方块,可以存储更多的数据,包括数字、字母、汉字以及URL等。当使用手机扫描二维码时,读码器会解码这些小方块,从而获取其中的信息。 在Java中,我们可以借助开源库...

    JAVA常见中文问题的解决方案.txt

    这里的`GB2312`是中国大陆最常用的汉字编码之一。 #### 1.2 Servlet响应时的字符集设置 在Servlet处理请求并返回响应时,也需要设置响应体的字符集编码,确保客户端能够正确解析内容,示例代码如下: ```java ...

    java完美的验证码生成

    - 中文验证码:需要用到Unicode编码,通过随机选择汉字的Unicode范围(如\u4e00-\u9fff)来生成中文字符。 2. **图像生成**: - 使用`java.awt.Color`定义背景色、线条颜色等。 - `java.awt.Font`创建字体对象,...

    js传值后台中文出现乱码的解决方法

    其次,在Java端,我们通常使用`URLDecoder.decode()`方法对从URL参数中获取的字符串进行解码。由于在JavaScript端已经对中文进行了`encodeURI()`编码,所以在Java端我们需要指定正确的字符集进行解码,通常是"UTF-8...

    java面试题(JAVA代码与编程).pdf

    在Java面试中,涉及到的技术和知识点广泛,涵盖了字符串处理、数据库连接、XML解析、线程同步等多个方面。以下是对这些面试题的详细解答: 1. **字符串截取**:题目要求编写一个函数,能按字节截取字符串,同时确保...

Global site tag (gtag.js) - Google Analytics