繁体   English   中英

在Swift中将字符串转换为HTML

[英]Convert String To HTML In Swift

我正在发送一个帖子请求,其中包含用户名和密码的电子邮件地址。 当我在电子邮件地址(test@test.com)中进行硬编码时,此请求有效:

test%40test.com

但是,当我通过它实际的电子邮件地址时,它显然不起作用。 快速地,如何将字符串转换为HTML格式(我猜是URL格式)。 我发现iOS7添加了NSHTMLTextDocumentType,它可能可以为我做到这一点,但是我在Swift中找不到任何示例。 这是我在目标C中找到的一个:

NSURL *htmlString = [[NSBundle mainBundle]
URLForResource: @"helloworld" withExtension:@"html"];
NSAttributedString *stringWithHTMLAttributes = [[NSAttributedString alloc]   initWithFileURL:htmlString options:@{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType} documentAttributes:nil error:nil];

这在Swift中如何运作? 或者,如果有人有更好/更轻松的建议适用于所有版本的iOS,我将不胜感激。 我也不想引用第三方库来完成这项工作。

谢谢布莱恩,我从那个话题中得到了答案。 这是最终有效的方法:

var originalString = "test@test.com"
var escapedString = originalString.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLHostAllowedCharacterSet())
println("escapedString: \(escapedString)")

打印出来

test%40test.com

刚刚在操场上尝试了一下,它似乎起作用了。 这是我在Objective-C中用来转义URL字符串的方法。

var email: CFStringRef = "email@address.com"
CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(nil, email, nil, "!*'();:@&=+$,/?%#[]", kCFStringEncodingASCII))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM