如何修复 HTML 中的乱码

介绍

如果在其他编码类型的浏览器中显示源代码等文本文件,则会出现乱码。
我将解释如何在 HTML 中指定字符编码并纠正乱码。

目次

1.什么是字符编码?
2. 编码类型是什么 代码与字符的对应关系 表
3. 指定HTML中的编码类型
4. 转换编码

1.什么是字符编码?

一言以蔽之,就是“将字符数据转换为数值”。
计算机只能“以数字方式”理解数据。因此,在处理“字符”时,将其转换为“数值”并进行处理。这种转换称为字符编码。

2、编码类型是数字和字母的对应表。

为了让计算机理解“字母”,需要一个“数字”和“字母”的对应表。
该对应表有多种类型,要处理的对应表根据OS的类型而不同。例如,Windows 处理不同对应表中的文本,例如 Shift_JIS 和 UNIX 以及 UTF-8 中的 Mac。
该对应表称为编码类型,无论编码类型如何,都将相同的数字数据分配给字母表。因此,用英文编写的文本文件,即使显示在与创建它的计算机不同的计算机上,也不会出现乱码。
但是,分配给平假名和汉字的数值数据因编码类型而异。
然后,如果你在 Windows 上创建一个文本文件并在 Mac 上显示它,字符就会出现乱码,你将无法阅读它。
所有的操作系​​统都可以处理所有的编码类型,但是默认的编码类型不同,所以会出现乱码。

3.在HTML中指定编码类型

首先,您必须在 HTML 文件中指定要显示的页面上使用的编码类型。如果未指定,内容中的字符将被误解。
为此,请在编写源代码的 HTML 文件的 meta 元素中使用 charset 属性。
此外,语言是日语(lang = "ja"),因为假设字符会出现乱码。

如果要以 UTF-8 显示

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
・・・

如果要在 Shift_JIS 中显示

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="Shift_JIS">
・・・

由于这个charset属性是从HTML5中添加的属性,所以在HTML5之前的HTML版本中通过如下方式描述。

HTML5之前如何指定字符代码

<meta http-equiv="content-type" content="text/html; charset=文字コード">

如果要在 HTML5 之前的版本中以 Shift_JIS 显示

<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">

4.转换编码

使用编辑器查看 HTML 文件。
目前有很多文字是自动识别显示的,如果没有自动识别,需要自己从设置中切换编码类型。
这一次,我们将使用 VScode 在 Shift_JIS 中显示。

VS Code 的默认编码类型是 UTF-8。因此,当显示使用 Shift_JIS 创建的文本文件时,字符会出现乱码。
VS Code 默认具有转换编码类型的能力,因此转换不需要扩展。


点击 VS Code 屏幕底部显示的编码类型(默认为 UTF-8)

从显示的菜单中选择“Reopen with encoding”
↓选择
“Japanese (Shift JIS)”
↓ 无
乱码 Shift_JIS 显示在


参考

如何从 Shift JIS 或 EUC 转换为 UTF-8
字符代码和乱码
http-equiv 属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值