我需要快速使用一些queryURL。当我一次用目标C完成这项工作时,我很快就感到陌生。并且它与目标C一起正常工作。这是我的目标C项目的代码,它可以正常工作。
NSString* queryURL;
queryURL = [NSString stringWithFormat:@"https://google.com];
NSCharacterSet *set = [NSCharacterSet URLQueryAllowedCharacterSet];
NSString *result = [queryURL stringByAddingPercentEncodingWithAllowedCharacters:set];
NSURL *googleURL = [NSURL URLWithString:result];
NSError *error;
NSString *googlePage = [NSString stringWithContentsOfURL:googleURL
encoding:NSASCIIStringEncoding
error:&error];
NSLog(@"Back%@", googlePage);
正如我所说,它工作正常。现在我将其更改为以下swift代码
if let url = URL(string: "https://google.com") {
do {
let contents = try String(contentsOf: url)
print(contents)
} catch {
// contents could not be loaded
}
} else {
// the URL was bad!
}
但它遇到错误contents could not be loaded
,如果有人可以帮助我,我将非常感激。
您忽略了swift的编码(该参数在swift中是可选的,但在objc中是必需的:let contents = try String(contentsOf: url, encoding: .ascii)