如何将转义的unicode字符解码为普通字符



如何解码将转义的Unicode字符替换回字符?我尝试过在线Unicode解码器和这篇文章:如何将Unicode编码的字符串转换为字母字符串,但都不起作用。

我有以下字符编码如下:

ua6adua6adua6b3ua6ae
ua6aeua6b3ua6b3ua6ad
ua6b2ua6b3ua6b3ua6ae$ua6adua6b0ua6aeua6b1$ua6aeua6b2ua6b1ua6af

代码本身:

public class ua6b3ua6afua6b3ua6ad
{
public static final boolean u200e;

public ua6b3ua6afua6b3ua6ad() {
final boolean u200e = ua6b3ua6afua6b3ua6ad.u200e;
if (!u200e) {
return;
}
}

public void ua6b2ua6b2ua6b0ua6ae() {
final boolean u200e = ua6b3ua6afua6b3ua6ad.u200e;
if (!u200e && !u200e) {
return;
}
}

public void ua6b2ua6b2ua6b1ua6b2(final int n, final int n2) {
final boolean u200e = ua6b3ua6afua6b3ua6ad.u200e;
if (!u200e && !u200e) {
return;
}
}

public void ua6adua6b2ua6aeua6b3(final int n, final int n2, final int n3) {
final boolean u200e = ua6b3ua6afua6b3ua6ad.u200e;
if (!u200e && !u200e) {
return;
}
}

这些字符似乎是Bamum。您可以简单地阅读并打印此文本,例如:

public static void main(String[] args) {
String str = "public static void ua6b2ua6b2ua6b0ua6ae() {";
System.out.println(str);
ꚲꚲꚰꚮ();
}
public static void ꚲꚲꚰꚮ() {
System.out.println("it works!");
}

输出:

public static void ꚲꚲꚰꚮ() {
it works!

如果这些字符是某种替换密码,您可以尝试查找编码字典。但这可能是不可能的。


另请参阅:用另一个字符串中的另一个字符替换字符串中的一个字符

看起来这是一个模糊的代码。即使你把这些unicode翻译成它们的符号,你也无法阅读代码,除非你的文本编辑器安装了字体
此外,名为'\u200e'的布尔变量不是打印类型unicode。请参阅此处的解释,将\u200e解码为字符串。

类和成员的原始名称已替换为垃圾邮件。你必须打开原始代码才能对其进行分析

最新更新