Ich habe eine große Textdatei (ca. 10 MB). In der Textdatei wie es Werte gibt (ohne Leerzeilen zwischen den Zeilen, konnte ich es hier nicht formatiert richtig):NSScanner vs. componentsSeparatedByString
;string1;stringValue1;
;string2;stringValue2;
;string3;stringValue3;
;string4;stringValue4;
Ich bin Parsen alle ‚stringX‘ Werte in ein Array und die ' stringValueX‘auf eine andere Zeichenfolge, eine ziemlich hässliche Lösung mit:
words = [rawText componentsSeparatedByString:@";"];
NSEnumerator *word = [words objectEnumerator];
while(tmpWord = [word nextObject]) {
if ([tmpWord isEqualToString: @""] || [tmpWord isEqualToString: @"\r\n"] || [tmpWord isEqualToString: @"\n"]) {
// NSLog(@"%@*** NOTHING *** ",tmpWord);
}else { // here I add tmpWord the arrays...
ich habe versucht, indem sie diesem Beispiel dies mit NSScanner
zu tun: http://www.macresearch.org/cocoa-scientists-part-xxvi-parsing-csv-data
Aber ich erhielt Warnungen Speicher und alles stürzte dann.
Soll ich dies mit NSScanner
tun und wenn ja, kann mir jemand ein Beispiel geben, wie man das macht?
Danke!
Das sind viele Sachen, die man im RAM auf einem mobilen Gerät speichern kann! Der Code, den Sie weggelassen haben, wäre ebenfalls interessant. Sie können Ihren Speicherverbrauch mit Instrumenten überprüfen. – Eiko