gpt4 book ai didi

iphone - 在 iPhone 中检索文本文件时出现问题

转载 作者:行者123 更新时间:2023-12-03 21:07:57 26 4
gpt4 key购买 nike

我使用以下代码将文本文件写入 de Documents 文件夹:

NSArray *filePaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *fileDocumentsDirectory = [filePaths objectAtIndex:0];
NSString *fullPath = [fileDocumentsDirectory stringByAppendingPathComponent:self.fileName];
NSData *tmpData = [NSData dataWithBytes:self.content length:[self.content length]];
[tmpData writeToFile:appFile atomically:YES];

如果我直接使用 NSData 的内容创建一个字符串,它就可以工作,所以数据看起来没问题。我用以下命令检索文件:

NSString *fileContents = [[NSString alloc] initWithContentsOfFile:fullPath usedEncoding:nil error:nil];

NSString *fileContents = [NSString stringWithContentsOfFile:fullPath usedEncoding:&encoding error:&error];

或者进入 NSData 并从那里进入字符串

NSData *fileContentsData = [NSData dataWithContentsOfFile:fullPath];
NSString *fileContents = [[NSString alloc] initWithData:fileContentsData encoding:NSUTF8StringEncoding];

在这两种情况下,fileContents 均为空。我快疯了,我就是不明白为什么 fileContents 为空。我用 NSLog 检查了每个值,并且“self.content”包含值,NSData 包含相同的值...但尝试检索它们返回 null 或者,尝试使用 NSUTF16StringEncoding,我检索...中文字符,但不是 null。

它一定是与编码相关的东西,但是 tmpData 使用 UTF-8 并从中初始化一个字符串,它就像一个魅力,问题似乎是当我读/写文件时。

我现在头晕了,你能帮我一下吗?

提前致谢:)

编辑:我刚刚尝试使用以下代码从 URL 打开 .txt 文件:

NSURL *url = [[NSURL alloc] initWithString:tmpField.text];
NSURLRequest *req = [[NSURLRequest alloc] initWithURL:url];

NSHTTPURLResponse *response = nil;
NSError *error = nil;

NSData *responseData = [NSURLConnection sendSynchronousRequest:req
returningResponse:&response
error:&error];
if(response == nil) {
// TO BE CONTINUED
}
NSInteger statusCode = [response statusCode];
NSString *contentType = [[response allHeaderFields] objectForKey:@"Content-Type"];

if(statusCode >= 200 && statusCode < 300 && [contentType hasPrefix:@"text"]) {
NSString *payloadAsString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

我已经检查过,程序到达了最后一行,但是payloadAsString是...没错,也是nil。那么我做错了什么?

最佳答案

self.content 的类型是什么?如果它是 NSString ,则使用 -[NSString dataUsingEncoding:NSUTF8StringEncoding] 方法而不是 -[NSData initWithBytes:] 来获取 NSData 对象。

关于iphone - 在 iPhone 中检索文本文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5292139/

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