NSData to NSString 截断 - iPhone

3
我有以下代码。
NSData *pageData = [NSURLConnection sendSynchronousRequest:request returningResponse:NULL error:NULL];
NSString *webpage = [[NSString alloc] initWithData:pageData encoding:NSUTF8StringEncoding];

这对大多数页面都可以正常工作,但会截断非常长的页面,有没有什么解决方法呢?

截断是由于返回数据的长度(您是否输出了[pageData length]和[webpage length]?)还是与字符编码有关? - drvdijk
不确定,PageData的长度为117638,网页的长度为117637。 - Lee Armstrong
2个回答

4
我相信这是您要查找的内容(来自上面链接的NSString类参考文档):
stringWithContentsOfURL:encoding:error:

Returns a string created by reading data from a given URL interpreted using a given encoding.

(id)stringWithContentsOfURL:(NSURL *)url encoding:(NSStringEncoding)enc error:(NSError **)error

Parameters
url The URL to read.

enc The encoding of the data at url.

error If an error occurs, upon returns contains an NSError object that describes the problem. If you are not interested in possible errors, you may pass in NULL.

Return Value
A string created by reading data from URL using the encoding, enc. If the URL can’t be opened or there is an encoding error, returns nil.


3

嗨丹,适用于哪个部分,我已经搜索了好几次。 - Lee Armstrong
我链接的那个部分是:stringWithContentsOfURL: encoding: error该方法会自动下载URL并将结果放入字符串中。 - Dan Lorenc

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接