为转发telnet写unicode字符

时间:2011-02-21 20:07:43

标签: java sockets unicode special-characters telnet

我正在编写一个java代码,用于连接和执行基于telnet的设备中的命令。 当我登录时,会出现如下消息:

Trying 10.11.115.160...
Connected to 10.11.115.160.
Escape character is '^]'.

问题在于,当我想要注销时,不知道如何使用简单的字符串来写这个字符'^'',如下所示:

telnetClient.execute("^]");

telnetClient.execute("\uXXXX");

在linux终端中,它使用ctrl +]。 我没有在unicode表中找到这个char。

有人知道吗?提前谢谢

2 个答案:

答案 0 :(得分:6)

Ctrl + ]U+001D INFORMATION SEPARATOR THREE,所以它是\u001d。可以通过运行cat | hexdump并输入Ctrl + ]Ctrl + D来轻松检查。

U+001B ESCAPECtrl + [

答案 1 :(得分:4)

该字符是“组分隔符”,或\u001d

^]来自于一种对打印不可打印字符进行编码的旧方法。具有ASCII值的字符(是的,这远远低于ASCII仍然相关的时间)低于32的字符使用^字符和另一个ASCII字符进行编码,从{{{ 1}}。因此,NUL(0)变为@,字符编号1变为^@,2变为^A等等.GS恰好具有29的值,并且在ASCII表中的@之后的第29个字符是^B

编辑:删除了尴尬的错误估算¬___