QUrl和编码

时间:2013-03-11 17:56:21

标签: qt

我在使用Qt 4.8.x

的mac上遇到问题

我有一个mailto QURL,它有一个编码的正文组件。简化它:

mailto:?subject=Hello&body=Hello%2C%0A%0AYou%20have%20been%20invited

我的问题是,当我的默认应用程序启动时(尝试多个电子邮件客户端),编码仍显示在邮件正文上。这适用于Windows,但在Mac上失败。

我有没有办法让编码转换成电子邮件客户端正文中的可读文本?

2 个答案:

答案 0 :(得分:2)

还可以使用fromPercentEncoding解码Qurl格式以清除字符串。

答案 1 :(得分:1)

QUrl是错误的。没有办法解决这个问题,而是直接去Cocoa。

void MyMacLaunchURLClass::LaunchURL(char * url)
{
    NSString *urlStr = [NSString stringWithCString:url encoding:NSASCIIStringEncoding];
    [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:urlStr]];
}

解决了这个问题。