gpt4 book ai didi

ios - URL 下载的不同 NSString 结果

转载 作者:行者123 更新时间:2023-11-28 22:33:08 25 4
gpt4 key购买 nike

我正在解析从网站获得的字符串,但根据我的下载方式得到不同的结果。它是这样工作的:

NSString *tagiString = @"http://tagesanzeiger.ch";
NSURL *tagiURL = [NSURL URLWithString:tagiString];
NSError *error;
NSString *text =[NSString stringWithContentsOfURL:tagiURL
encoding:NSASCIIStringEncoding
error:&error];

以下方法不起作用。我首先下载数据,将其输入 NSMutableData *articleData,然后使用 initWithData:encoding:

转换为 NSString
- (void)downloadWebsite
{
NSString *tagiString = @"http://tagesanzeiger.ch";
NSURL *websiteURL = [NSURL URLWithString:tagiString];
NSURLRequest *request = [NSURLRequest requestWithURL:websiteURL];
connection = [[NSURLConnection alloc] initWithRequest:request
delegate:self
startImmediately:YES];
}

- (void)connection:(NSURLConnection *)conn didReceiveData:(NSData *)data
{
[articleData appendData:data];
}

- (NSString *)data
{
NSString *text = [[NSString alloc] initWithData:articleData
encoding:NSSymbolStringEncoding];
return text;
}

两个版本生成的 NSString *text 内容似乎不一样?我需要使用不同的字符串编码吗?我尝试了很多都没有成功。

最佳答案

实现委托(delegate)方法 connectionDidFinishLoading 以确保连接加载已完成,您可以在其中调用数据方法。也尝试使用 NSASCIIStringEncoding 而不是NSSymbolStringEncoding。

- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSString *text = [[NSString alloc] initWithData:self.articleData
encoding:NSASCIIStringEncoding];
//do whatever you need to do with the text
}

关于ios - URL 下载的不同 NSString 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16880686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com