使用Gmail X-GM-RAW IMAP命令搜索utf-8字符串

使用Gmail X-GM-RAW IMAP命令搜索utf-8字符串,utf-8,gmail,imap,gmail-imap,Utf 8,Gmail,Imap,Gmail Imap,Gmail的imap扩展命令X-GM-RAW允许我在使用ascii查询字符串时执行搜索。如果查询中使用utf-8字符,imap将返回错误响应 utf-8输入字符串应该如何编码,以便X-GM-RAW搜索可以正常工作。我不想失去搜索特定字段(如“主题”或“rfc833msgid”)的灵活性 谢谢,IMAP不是,所以它必须使用各种不同的编码来表示任何8位数据 对于文件夹和标签之类的内容,IMAP4使用来表示这些字符。方便的是,在修改后的utf7中编码的ascii数据本身就是这样编码的,所以通常不需要

Gmail的imap扩展命令X-GM-RAW允许我在使用ascii查询字符串时执行搜索。如果查询中使用utf-8字符,imap将返回错误响应

utf-8输入字符串应该如何编码,以便X-GM-RAW搜索可以正常工作。我不想失去搜索特定字段(如“主题”或“rfc833msgid”)的灵活性

谢谢,IMAP不是,所以它必须使用各种不同的编码来表示任何8位数据

对于文件夹和标签之类的内容,IMAP4使用来表示这些字符。方便的是,在修改后的utf7中编码的ascii数据本身就是这样编码的,所以通常不需要做任何特殊的事情

对于消息标题(包括主题),文本编码为

最后,attachments通常被编码为Base64引用的可打印文件

我最好的猜测是GMail使用修改过的utf7进行X-GM-RAW查询。我发现的修改后的utf7的最佳参考实现是


希望这有帮助

指定字符集UTF-8并以文本形式发送UTF-8搜索词。例如,搜索你好, 以UTF-8编码时,长度为6字节:

A SEARCH CHARSET UTF-8 X-GM-RAW {6}
+ go ahead
你好
* SEARCH 15
a OK SEARCH completed (Success)
在本例中,您将实际发送你好 在第三行


这将适用于任何接受astring的搜索关键字,包括SUBJECT和HEADER MESSAGE-ID。

我已尝试使用此命令搜索非ascii字符(如日语)。但我收到“Bad command cannot parse”错误。我刚刚发送了6字节UTF-8加密字符串,如\xE4\xBD\xA0\xE5\xA5\xBD格式。。但我仍然无法解决这个问题。请让我知道编码字符串格式