Java对URL进行编码和解码的两种方法

这篇具有很好参考价值的文章主要介绍了Java对URL进行编码和解码的两种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.使用java.net.URLEncoder和java.net.URLDecoder类

public class UrlEncoder {

    public static void main(String[] args) {
        try {
            String url = "https://www.baidu.com/sugrec?&prod=pc_his&from=pc_web&_t=1680167620430&req=2&csor=0";
            String encodedUrl = java.net.URLEncoder.encode(url, "UTF-8");
            System.out.println("加密后:" + encodedUrl);
            String decodedUrl = java.net.URLDecoder.decode(encodedUrl, "UTF-8");
            System.out.println("解密后:" + decodedUrl);
            /**
             * 输出:
             * 加密后:https%3A%2F%2Fwww.baidu.com%2Fsugrec%3F%26prod%3Dpc_his%26from%3Dpc_web%26_t%3D1680167620430%26req%3D2%26csor%3D0
             * 解密后:https://www.baidu.com/sugrec?&prod=pc_his&from=pc_web&_t=1680167620430&req=2&csor=0
             */
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

上述代码中,使用URLEncoder.encode方法将URL进行编码,指定编码方式为UTF-8,生成编码后的URL字符串。使用URLDecoder.decode方法将编码后的URL字符串进行解码,指定解码方式为UTF-8,生成解码后的URL字符串。

2.使用java.nio.charset.StandardCharsets和java.util.Base64类

import java.nio.charset.StandardCharsets;
import java.util.Base64;

public class UrlEncoder {

    public static void main(String[] args) {
        try {
            String url = "https://www.baidu.com/sugrec?&prod=pc_his&from=pc_web&_t=1680167620430&req=2&csor=0";
            String encodedUrl = Base64.getEncoder().encodeToString(url.getBytes(StandardCharsets.UTF_8));
            System.out.println("加密后:" + encodedUrl);
            String decodedUrl = new String(Base64.getDecoder().decode(encodedUrl), StandardCharsets.UTF_8);
            System.out.println("解密后:" + decodedUrl);
            /**
             * 输出:
             * 加密后:aHR0cHM6Ly93d3cuYmFpZHUuY29tL3N1Z3JlYz8mcHJvZD1wY19oaXMmZnJvbT1wY193ZWImX3Q9MTY4MDE2NzYyMDQzMCZyZXE9MiZjc29yPTA=
             * 解密后:https://www.baidu.com/sugrec?&prod=pc_his&from=pc_web&_t=1680167620430&req=2&csor=0
             */
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

上述代码中,使用Base64.getEncoder().encodeToString方法将URL字符串转换为UTF-8编码的字节数组,并进行Base64编码。使用new String(Base64.getDecoder().decode(encodedUrl), StandardCharsets.UTF_8)方法将编码后的URL字符串进行解码,生成解码后的URL字符串。

需要注意的是,对URL进行编码和解码时需要指定字符集,常用的字符集包括UTF-8、ISO-8859-1等。在使用URL进行网络传输时,一般建议使用UTF-8编码。文章来源地址https://www.toymoban.com/news/detail-508583.html

到了这里,关于Java对URL进行编码和解码的两种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VIVADO写完xxx.v文件后进行引脚配置的两种方法

    第一种:创建引脚配置文件(XDC),这种方法需要学习配置引脚的语句语法不适合新手。 第二种,直接进入引脚配置界面。

    2024年02月11日
    浏览(35)
  • java关闭流的两种方法

    当使用完流后,关闭所有打开的流仍然是一个好习惯。一个被打开的流有可能会用尽系统的资源,这取决于平台和实现。如果没有将流关闭,另一个程序试图打开另一个流时,可能会得到不需要的资源。 有两种关闭方式: ​ 如下: jdk1.7之前 方法一:手动关闭,即为使用c

    2024年02月13日
    浏览(36)
  • 前端URL编码与解码:理解、应用与实践

    目录 什么是URL编码和解码? 为什么需要URL编码和解码? 1. 特殊字符处理 2. 支持非ASCII字符 3. SEO优化与用户体验 JavaScript中的URL编码和解码 URL编码示例: URL解码示例: 实际应用场景 1. 处理查询参数 2. 构建友好的URL 3. 处理用户输入 总结 encodeURI() 与 encodeURIComponent():区别与

    2024年02月11日
    浏览(32)
  • java 数组添加元素的两种方法

    说在前面 数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,给数组添加数据。具体代码如下 方式一: 创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据 运行结果 方式二: 先把数组转

    2024年02月11日
    浏览(55)
  • java 数组新增元素的两种方法

    数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,添加元素数据 1创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据         String[] s1 = {\\\"a\\\",\\\"b\\\",\\\"c\\\"};         String[] s2 = new String[s1.l

    2024年02月16日
    浏览(39)
  • Linux系统下使用命令行进行Base64编码和解码

    大家知道,编码是将数据转换为有效传输或存储所需格式的过程。相反,解码是将编码数据转换回其原始格式的过程。今天在这里向大家介绍一下 Base64 编码和解码,以便大家理解与学习。 Base64 是将二进制数据转换为 ASCII 的编码方式之一。通常,当二进制数据传输到无法正

    2024年02月11日
    浏览(46)
  • 【Git】GitHub 的两种 URL 及其身份验证

    参考官方文档: Link 远程 URL 是 Git 一种指示“代码存储位置”的绝佳方式。用户只能推送到两类 URL 地址: HTTPS URL,如 https://github.com/user/repo.git SSH URL,如 git@github.com:user/repo.git (推荐使用) HTTPS URL 在所有存储库上都可用,在命令行上使用 HTTPS URL 对远程仓库执行 git clone、

    2024年02月08日
    浏览(53)
  • Java生成二维码的两种方法

    本文介绍Java生成二维码的两种方法,这两种方法都依赖于google提供的二维码依赖包。 一种是自己写工具类,代码可以网上抄。 另一种是使用hutool第三方工具类的依赖包,不用自己抄代码。 自定义工具包就是借助google生成二维码的依赖包,然后自己写工具类。 工具类 测试代

    2024年02月06日
    浏览(52)
  • 13、ffmpeg使用nvidia显卡对OAK深度相机进行解码和编码

    基本思想:简单使用nvidia的硬件解码进行oak相机的编码和解码学习 一、在本机rtx3060配置好显卡驱动和cuda之后进行下面操作50、ubuntu18.0420.04+CUDA11.1+cudnn11.3+TensorRT7.2/8.6+Deepsteam5.1+vulkan环境搭建和YOLO5部署_ubuntu18.04安装vulkan_sxj731533730的博客-CSDN博客 二、配置环境和编译库

    2024年02月16日
    浏览(39)
  • php的Url 安全的base64编码解码类

    2024年02月04日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包