举报

Coding Plus 社区

Vibe Coding 开发者的免费工具集和交流社区

URL编解码工具

快速对URL进行编码和解码,支持自动多重解密,解决中文乱码问题。

支持自动多重解密(自动处理重复编码)

使用说明

  • 在输入框中粘贴需要处理的 URL,点击"解密"进行解码,点击"加密"进行编码
  • 自动多重解密:当 URL 被多次编码时(如 %25E4%25B8%25AD),点击"解密"会自动递归解码直到还原为原始文本
  • 支持处理包含中文、日文、韩文、特殊符号等各种字符的 URL
  • 常见场景:修复浏览器地址栏中文乱码、解析分享链接中的编码参数、处理 API 返回的编码 URL

编码示例

原始文本:https://example.com/search?q=中文测试&lang=zh-CN

编码后:https://example.com/search?q=%E4%B8%AD%E6%96%87%E6%B5%8B%E8%AF%95&lang=zh-CN

编程实战:URL编码应用

在Web开发中,URL编码是一项基础技能。以下是几种常见编程语言的URL编码示例:

Python:

import urllib.parse

encoded = urllib.parse.quote("中文测试", safe='')

# 结果: '%E4%B8%AD%E6%96%87%E6%B5%8B%E8%AF%95'


JavaScript:

encodeURIComponent("中文测试");

// 结果: '%E4%B8%AD%E6%96%87%E6%B5%8B%E8%AF%95'


Java:

URLEncoder.encode("中文测试", "UTF-8");

// 结果: '%E4%B8%AD%E6%96%87%E6%B5%8B%E8%AF%95'

URL编码原理

URL编码(也称为百分号编码)是一种将URL中的特殊字符转换为%XX格式的方法,其中XX是该字符的ASCII码的十六进制表示。 这是因为URL只能包含ASCII字符集中的一部分字符。当URL中包含非ASCII字符(如中文)或特殊字符时,必须进行编码。

例如,中文字符"中"的UTF-8编码是0xE4B8AD,所以URL编码后就是%E4%B8%AD。

常见问题

  • 为什么解码后还是乱码?可能是多重编码,再次点击"解密"即可。本工具会自动检测并递归解码
  • URL编码和HTML编码有什么区别?URL编码使用%加十六进制(如%20),HTML编码使用&加名称(如 ),本工具处理的是URL编码
  • 数据安全吗?所有编解码操作在浏览器本地完成,不会上传到服务器
  • 什么时候需要URL编码?当URL参数中包含中文、空格、特殊符号等非ASCII字符时,必须进行URL编码

二维码识别工具

快速识别二维码图片,支持单个二维码图片和一张图片多个二维码批量识别。

点击上传或拖拽二维码图片

支持 JPG、PNG、GIF、WebP 等格式,建议图片大小不超过 5MB

使用说明

  • 点击上传区域选择图片,或直接拖拽图片到上传区域
  • 支持 JPG、PNG、GIF、WebP 格式,建议图片大小不超过 5MB
  • 支持一张图片中包含多个二维码的批量识别(前端 jsQR + 后端 pyzbar 双引擎)
  • 识别结果可直接复制使用

二维码基础知识

二维码(QR Code)是一种二维条码,能够存储大量数据。QR码由黑白像素组成的正方形图案,通过特定的编码方式存储信息。 QR码支持多种数据类型:文本、URL、联系人信息、Wi-Fi配置等。

二维码类型识别

纯文本:Hello World

URL:https://codingplus.cn/

名片(vCard):BEGIN:VCARD...END:VCARD

Wi-Fi:WIFI:T:WPA;S:MyWiFi;P:password;;

电话:TEL:+8612345678900

邮箱:mailto:test@example.com

编程实战:二维码解码

以下是使用Python进行二维码识别的示例代码:

使用 pyzbar 库:

from pyzbar.pyzbar import decode

from PIL import Image

img = Image.open('qrcode.png')

result = decode(img)

for obj in result:

print(f"数据: {obj.data.decode('utf-8')}")

print(f"类型: {obj.type}")

常见问题

  • 识别失败怎么办?请确保图片清晰、二维码完整无遮挡,建议使用高清原图
  • 支持截图识别吗?支持,只要截图中的二维码足够清晰即可
  • 图片会上传到服务器吗?前端识别在浏览器本地完成,无需上传。如果前端识别失败,才会将图片发送到服务器进行后端识别
  • 一图多码如何识别?本工具支持同一张图片中多个二维码的批量识别,会列出所有识别结果

二维码生成器

快速生成自定义二维码,支持调整尺寸、颜色、容错等级等参数,满足各种场景需求。

10
4

请输入文本或URL并点击生成

使用说明

  • 在输入框中输入文本或 URL,点击"生成二维码"即可
  • 可自定义尺寸(5-20模块)、边框宽度、容错等级(L/M/Q/H)
  • 可自定义前景色和背景色,生成彩色二维码
  • 生成的二维码可右键保存或长按保存为 PNG 图片

二维码容错等级详解

二维码的容错等级决定了二维码可以承受多少损坏仍能被正确识别:

  • L级(7%):最低容错率,适合内容较短且使用环境良好的场景
  • M级(15%):推荐级别,适合大多数日常使用场景
  • Q级(25%):较高容错率,适合可能有部分遮挡的场景
  • H级(30%):最高容错率,适合需要添加Logo或使用环境复杂的场景

二维码容量参考

QR码版本与容量(数字模式):

版本1 (21x21): 41个数字

版本5 (37x37): 152个数字

版本10 (57x57): 356个数字

版本25 (117x117): 1273个数字

字母数字模式容量约为数字模式的60%

汉字模式容量约为数字模式的25%

编程实战:生成二维码

以下是使用Python生成二维码的示例代码:

使用 qrcode 库:

import qrcode

qr = qrcode.QRCode(

version=1,

error_correction=qrcode.constants.ERROR_CORRECT_M,

box_size=10,

border=4,

)

qr.add_data('https://codingplus.cn/')

qr.make(fit=True)

img = qr.make_image(fill_color='black', back_color='white')

img.save('qrcode.png')

常见问题

  • 容错等级怎么选?L(7%)适合简单场景,M(15%)日常使用推荐,Q(25%)适合有遮挡场景,H(30%)适合加logo场景
  • 为什么生成失败?输入内容过长会导致二维码过于密集,建议控制在 500 字符以内
  • 可以生成带 Logo 的二维码吗?选择 H 级容错后,可在生成的二维码中心覆盖 Logo(需自行处理)
  • 二维码尺寸如何选择?尺寸越大,识别距离越远;建议打印使用时选择较大尺寸

JSON格式化工具

在线JSON格式化工具,美化、压缩和验证JSON数据,支持折叠展开功能,方便查看复杂JSON结构。

使用说明

  • 在输入框中粘贴 JSON 数据,点击"格式化美化"进行缩进排版,点击"压缩"去除空白
  • 格式化后支持折叠/展开层级,方便查看嵌套结构
  • 支持搜索功能:输入关键词高亮匹配内容,可逐个跳转
  • 一键复制格式化或压缩后的 JSON 数据

JSON语法规范

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,具有以下特点:

  • 键名必须使用双引号包裹
  • 字符串值必须使用双引号包裹
  • 支持的数据类型:字符串、数字、布尔值、数组、对象、null
  • 数组元素用逗号分隔,最后一个元素后面不能有逗号
  • 对象属性用逗号分隔,最后一个属性后面不能有逗号

JSON示例

{

"name": "Coding Plus",

"version": "2.0",

"features": ["URL编解码", "二维码工具", "JSON格式化"],

"settings": {

"theme": "light",

"autoSave": true

},

"count": 10000

}

编程实战:JSON处理

以下是几种编程语言处理JSON的示例:

Python:

import json

# 解析JSON

data = json.loads(json_string)

# 生成JSON(格式化)

json.dumps(data, indent=4, ensure_ascii=False)

# 生成JSON(压缩)

json.dumps(data, separators=(',', ':'))


JavaScript:

// 解析JSON

const data = JSON.parse(jsonString);

// 生成JSON(格式化)

JSON.stringify(data, null, 2);

// 生成JSON(压缩)

JSON.stringify(data);

常见问题

  • 格式化报错怎么办?请检查 JSON 语法是否正确,常见问题:末尾多余逗号、键名未用双引号、使用了单引号
  • 支持多大的 JSON?浏览器端处理,建议不超过 1MB,超大文件可能导致卡顿
  • 数据安全吗?所有格式化操作在浏览器本地完成,不会上传到服务器
  • 为什么数字变成了字符串?JSON中数字不需要引号,字符串必须有引号

文档转HTML工具

富文本编辑器,实时编辑文档并获取HTML代码,支持排版、图片、表格、代码块等。

使用说明

  • 在编辑器中直接输入或粘贴内容,支持富文本排版、插入图片、表格、代码块等
  • 点击"获取HTML"可查看编辑器内容对应的 HTML 源代码
  • 点击"复制HTML"一键复制 HTML 代码,可直接粘贴到网页或邮件中使用
  • 编辑器基于 wangEditor v5,支持常见的文字排版和格式化操作

HTML基础知识

HTML(HyperText Markup Language)是构建网页的标准标记语言。使用标签来描述网页结构和内容:

基本结构:

<h1>标题内容</h1>

<p>段落内容</p>

<a href="url">链接</a>

<img src="url" alt="描述"/>

<ul><li>列表项</li></ul>

<table><tr><td>单元格</td></tr></table>

HTML常用标签参考

  • 文本格式:<strong>粗体</strong>、<em>斜体</em>、<u>下划线</u>
  • 标题:<h1>到<h6>,级别从大到小
  • 列表:<ul>无序列表、<ol>有序列表、<li>列表项
  • 表格:<table>、<tr>行、<td>单元格、<th>表头
  • 代码:<code>单行代码、<pre>预格式化文本

编程实战:HTML生成

以下是使用Python生成HTML的示例:

Python生成HTML:

html_content = f"""

<!DOCTYPE html>

<html lang="zh-CN">

<head><title>{title}</title></head>

<body>

<h1>{heading}</h1>

<p>{content}</p>

</body>

</html>

"""

常见问题

  • 支持插入图片吗?支持,可从本地上传图片插入到文档中
  • HTML代码可以直接使用吗?可以,生成的 HTML 是标准格式,可直接嵌入网页、邮件模板等场景
  • 编辑内容会保存吗?当前不会自动保存,请及时复制 HTML 代码。刷新页面后内容将丢失
  • 生成的HTML样式如何?生成的是纯HTML结构,如需样式可添加CSS样式表