如何不使用输入法打出汉字- 在word中打印出自己的名字

本文介绍了一种不依赖输入法,在Word中输入中文名的技巧。通过使用Alt键结合数字小键盘输入特定十进制数值,即可在多种编辑器中输出汉字。文中详细解释了在GBK和Unicode字符集下,汉字对应的数值,并展示了如何在不同字符集的系统中实现这一功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文章已经生成可运行项目,

有这样一个小游戏:即不使用任何输入法,在 Word 中打出自己的中文名字。如果你不知道如何实现,恭喜你,看完本文之后又 get 到一个新技能。时不时在女友和朋友之间展示一下这个小技巧,一定会收获赞许的目光。

下面以以我 优快云 博客的名“村中少年”为例进行说明。

1,“村中少年”四个字符对应的 GBK、GB2312 字符集中的编号如下:

B4E5(46309)、D6D0(54992)、C9D9(51673)、C4EA(50410)

括号内的是十进制,括号外的是十六进制。对于常见的中文字符来说 GBK 和 GB2312 的编号是一致的,可以理解 GB2312 是 GBK 的一个子集,即GB2312 字包含了常见的汉字,GBK 中的汉字更加的全面,包含了很多生僻的汉字。

2, 在中文 Windows 操作系统中,在 DOS 窗口中输入 chcp,如下图是我的系统的显示:
在这里插入图片描述
其中代码页就是字符集的别名,而 936 指的就是 GBK 字符集的代号,可以看到我的中文 Windows 操作系统中采用了 GBK 字符集。

3,在 Windows 中文操作系统中,按住 Alt 键不放,分别在数字小键盘上输入步骤 1 中字符集对应的十进制,依次为 46309、54992、51673、50410。

4,这个时候,每输入对应的数字之后,就可以在 DOS 窗口,Word 文档,Nodpad++ 等终端或者编辑器中打印出村中少年几个汉字。当然这里面有个限制需要注意,必须使用数字小键盘进行数字的输入,因此对于笔记本来说就无法使用这种方式来操作了。

5,如果你的系统使用的并不是 GBK 字符集,例如 Unicode 字符集或者其他如繁体中文字符集950,这个时候对应的数字就需要换成该字符在对应字符集中的编号。

6,比如我们使用的英文的 Linux 系统中通常采用的是 Unicode 字符集,村中少年 这四个字符对应 Unicode 字符集中的编号分别为:

6751(26449)、4E2D(20013)、5C11(23569)、5E74(24180)。

7,这个时候的组合就是 Alt 键加上步骤6对应 Unicode 字符集中的编号了,依次为 26449、20013、23569、24180。同样在使用unicode字符集的系统中可以打印出村中少年,感兴趣的童鞋可以自己试一试。

由于对于中国人来说,系统中最常见的字符集就是GBK和Unicode,因此本文以这两个字符集为例加以说明。上述操作的过程中还涉及到了一些概念,比如:

1,GBK、GB2312 字符集,通常你听到的可能如GBK、GB2312 字符集,为什么我这里称之为字符集?

2,Unicode字符集,Unicode编码,Unicode编号之间有时什么关系?

3,为什么上述只提到了字符串的编号,输入对应的编码可以吗?编号和编码又是什么关系?

4,上述操作实现背后的原理是什么?

当然关于字符编码,甚至文件乱码,网络报文乱码,文件名乱码,网页乱码,编程语言是如何处理字符串的,你或所或少会有这样或者那样的疑问,没关系,我在我的 用户名为 村中少年 gitchat中做了全面的梳理,希望能够为你解惑,详见这里

本文为优快云村中少年原创文章,转载记得加上原创出处,博主链接这里

本文章已经生成可运行项目
好的,我来为您解答这个问题。 首先,需要用Java编一个应用程序,并在主线程中创建一个Frame类型的窗口。可以使用Java的AWT或Swing库来创建窗口。以下是一个示例代码: ```java import java.awt.Frame; import java.awt.TextField; public class Main { public static void main(String[] args) { Frame frame = new Frame("输入汉字"); TextField textField = new TextField(); frame.add(textField); frame.pack(); frame.setVisible(true); } } ``` 此代码创建一个名为“输入汉字”的窗口,并在其中添加一个文本框。 接下来,在该窗口中创建一个名为“giveWord”的线程。该线程每隔2秒钟给一个汉字,并要求用户使用汉字输入法将该汉字输入到文本框中。以下是示例代码: ```java import java.awt.Frame; import java.awt.TextField; public class Main { public static void main(String[] args) { Frame frame = new Frame("输入汉字"); TextField textField = new TextField(); frame.add(textField); frame.pack(); frame.setVisible(true); Thread giveWord = new Thread(() -> { String[] words = {"你", "好", "啊", "!"}; for (String word : words) { try { Thread.sleep(2000); System.out.println("请输入汉字:" + word); } catch (InterruptedException e) { e.printStackTrace(); } } }); giveWord.start(); } } ``` 此代码创建了一个名为“giveWord”的线程,并在其中定义了一个汉字数组。线程循环遍历该数组,在每个汉字后暂停2秒钟,并在控制台中打印“请输入汉字汉字”这样的消息。用户应该使用汉字输入法将该汉字输入到文本框中。 请注意,此示例代码仅在控制台中打印消息。您需要将其修改为将汉字输入到文本框中。这可以通过在giveWord线程中调用textField.setText(word)来完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

村中少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值