У меня есть следующий код для чтения файла .txt и помещения его в строку для использования в NSScanner.
NSString *Period1String = [[NSBundle mainBundle] pathForResource: @"Period1String" ofType: @"txt"];
NSString *Period2String = [[NSBundle mainBundle] pathForResource: @"Period2String" ofType: @"txt"];
NSString *Period3String = [[NSBundle mainBundle] pathForResource: @"Period3String" ofType: @"txt"];
NSString *Period4String = [[NSBundle mainBundle] pathForResource: @"Period4String" ofType: @"txt"];
NSString *Period5String = [[NSBundle mainBundle] pathForResource: @"Period5String" ofType: @"txt"];
NSURL *requestTimetableURL = [NSURL URLWithString:@"http://www.dhsb.org/index.phtml?d=201435"];
NSLog(@"Loaded Timetable");
NSError *loaderror;
NSString *page = [NSString stringWithContentsOfURL:requestTimetableURL
encoding:NSASCIIStringEncoding
error:&loaderror];
[webView loadHTMLString:page baseURL:requestTimetableURL];
NSString* Period1;
NSScanner *htmlScanner = [NSScanner scannerWithString:page];
[htmlScanner scanUpToString:Period1String intoString:NULL];
[htmlScanner scanString:Period1String intoString:NULL];
[htmlScanner scanUpToString:@"</FONT>" intoString:&Period1];
period1label.text= Period1;
NSLog(@"Collected Period 1 Data: %@", Period1);
NSScanner *htmlScanner2 = [NSScanner scannerWithString:page];
NSString* Period2;
[htmlScanner2 scanUpToString:Period2String intoString:NULL];
[htmlScanner2 scanString:Period2String intoString:NULL];
[htmlScanner2 scanUpToString:@"</FONT>" intoString:&Period2];
period2label.text= Period2;
NSLog(@"Collected Period 2 Data: %@", Period2);
NSScanner *htmlScanner3 = [NSScanner scannerWithString:page];
NSString* Period3;
[htmlScanner3 scanUpToString:Period3String intoString:NULL];
[htmlScanner3 scanString:Period3String intoString:NULL];
[htmlScanner3 scanUpToString:@"</FONT>" intoString:&Period3];
period3label.text= Period3;
NSLog(@"Collected Period 3 Data: %@", Period3);
NSScanner *htmlScanner4 = [NSScanner scannerWithString:page];
NSString* Period4;
[htmlScanner4 scanUpToString:Period4String intoString:NULL];
[htmlScanner4 scanString:Period4String intoString:NULL];
[htmlScanner4 scanUpToString:@"</FONT>" intoString:&Period4];
period4label.text= Period4;
NSLog(@"Collected Period 4 Data: %@", Period4);
NSScanner *htmlScanner5 = [NSScanner scannerWithString:page];
NSString* Period5;
[htmlScanner5 scanUpToString:Period5String intoString:NULL];
[htmlScanner5 scanString:Period5String intoString:NULL];
[htmlScanner5 scanUpToString:@"</FONT>" intoString:&Period5];
period5label.text = Period5;
NSLog(@"Collected Period 5 Data: %@", Period5);
Но, когда кнопка нажата, чтобы все это произошло, все строки (ноль). Каждый текстовый файл
должно работать полностью, как они работали для других частей моего приложения.
Есть ли лучший способ, которым я должен делать это, или я могу улучшить этот текущий метод, чтобы получить результаты, которые я ищу?
Спасибо