initWithContentsOfFile Устаревший - PullRequest
8 голосов
/ 24 января 2012

Мне было интересно, какой код я мог бы использовать вместо initWithContentsOfFile: поскольку я искал что-то, что не считается устаревшим, но не может найти ничего. Я пытаюсь отобразить локальный файл HTML в веб-представлении, ниже приведен код:

- (void)viewDidLoad {
    [super viewDidLoad];

    NSString *htmlPath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
    NSURL *bundleUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];
    NSString *html = [[NSString alloc] initWithContentsOfFile:htmlPath];
    [self.myWebView loadHTMLString:html baseURL:bundleUrl];

}

И я получаю предупреждение о том, что initWithContentsOfFile: устарел и хотел бы знать, как его обновить.

Ответы [ 2 ]

16 голосов
/ 24 января 2012

Попробуйте это:

NSError *error = nil;
NSString *string = [[NSString alloc] initWithContentsOfFile:@"/path/to/file.txt" encoding:NSUTF8StringEncoding error:&error];
0 голосов
/ 24 января 2012

Использовать более новый инициализатор:

Метод NSString [initWithContentsOfFile: encoding: error:], где вы можете получить полезную ошибку, возвращенную вам, если возникнут какие-либо проблемы. Я связал документацию для вас. Если вы не знаете кодировку файла, вы также можете использовать другой метод с параметром usedEncoding.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...