나는 당신이 기본적으로
, 만CHCSVParser
는 CSV 파일을 구문 분석 :) 좋아 기뻐요. CSV 파일의 경로를 지정하면 NSStrings
의 전체 묶음을 다시 제공합니다. 그 시점 너머에서하는 일은 전적으로 당신에게 달린 것입니다.
iOS 앱에 'Data.csv'라는 CSV 파일이 포함되어 있다고 가정 해 보겠습니다. 여기 당신이 그것을 구문 분석 CHCSVParser
을 사용하십시오 방법은 다음과 같습니다
이 시점에서
NSString *path = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"csv"];
NSError *error = nil;
NSArray *rows = [NSArray arrayWithContentsOfCSVFile:path encoding:NSUTF8StringEncoding error:&error];
if (rows == nil) {
//something went wrong; log the error and exit
NSLog(@"error parsing file: %@", error);
return;
}
, rows
는 배열입니다. rows
의 각 요소는 그 자체로 CSV 파일의 단일 행을 나타내는 배열입니다. 의 각 요소가 인 배열은 NSString
입니다.
그럼 CSV 파일은 다음과 같습니다 가정 해 봅시다 : 당신이 파서를 통해 실행하는 경우, 당신은이 동등한를 다시 얻을 것이다
Barringer,Arizona,United States,Earth
"Chicxulub, Extinction Event Crater",,Mexico,Earth
Tycho,,,Moon
Lonar,Maharashtra,India,Earth
:
[NSArray arrayWithObjects:
[NSArray arrayWithObjects:@"Barringer",@"Arizona",@"United States",@"Earth",nil],
[NSArray arrayWithObjects:@"Chicxulub, Extinction Event Crater",@"",@"Mexico",@"Earth",nil],
[NSArray arrayWithObjects:@"Tycho",@"",@"",@"Moon",nil],
[NSArray arrayWithObjects:@"Lonar",@"Maharashtra",@"India",@"Earth",nil],
nil];
당신이 함께 할 무엇 그것은 당신의 사업입니다. CSV 파서는 UITableView
에 대해 알지 못하므로이 데이터를 가져 와서 다루기가 쉽고 데이터 모델에 적합한 방식으로 데이터를 다시 구성해야합니다.
또한 CHCSVParser
을 사용하면 the terms under which it is made available을 준수하는 데 동의하게됩니다. :)
감사합니다. Dave, 많이 도움이됩니다. 그래서 내 테이블 VC의'viewDidLoad' 메쏘드에이 메소드를 구현하는 가장 좋은 장소는 어디입니까? 그리고 API는 자동적으로 두 개의''''안에','이있을 때 그것이 모두 하나의 문자열이라는 것을 알고 있습니다. – Jon
@Jon 그 말은 제가 고쳐 쓴 오타였습니다. 재 : 최고의 장소? 벤처 기업 내부는 괜찮은 곳입니다. 가장 좋은 장소는 앱에 전적으로 달려있는 것입니다. :) –
감사 데이브. ViewDidLoad에서 해보려고했지만 앱이 지금 열리려면 영원히 필요합니다. 당신은 다른 sugggestions가 있습니까? 그것은 시뮬레이터에서 잘 작동하지만 내 장치에서 응용 프로그램을 열려면 30 초가 걸립니다. 초기 tableView를로드하려면이 데이터가 필요합니다. – Jon