我有一个文件名中包含非ASCII字母的RAR文件。我尝试用Delphi解码它。我的代码适用于ASCII文件名但在这些上失败了。它不是WideChar,也不是UTF8。我在这里找到了RAR规格: http://ams.cern.ch/AMS/amsexch/arch/rar/technote.txt 但它没有说明字符编码。 我尝试了WOTSIT.org但是所有RAR链接都已经死了(几乎每个链接都死了;我甚至联系了管理员,但他没有回复,也没有修复链接)。 它似乎不是8位编码,但不知道它是什么。
答案 0 :(得分:5)
这是唯一一个关于名称的段落:
0x200 - FILE_NAME contains both usual and encoded
Unicode name separated by zero. In this case
NAME_SIZE field is equal to the length
of usual name plus encoded Unicode name plus 1.
If this flag is present, but FILE_NAME does not
contain zero bytes, it means that file name
is encoded using UTF-8.
似乎它是UTF-8,但你说它不是。你能再试一次吗?