Leerzeichen aus einem String

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Leerzeichen aus einem String

    Hallo,

    ich greife Daten von einem Webservice ab und füge sie in mein tableview ein. Aus irgendeinem Grund versetzt er mir ab dem dritten Datensatz alle Werte um eine unbestimmte Anzahl von Leerzeichen.
    Gibt es eine Möglichkeit geschickt die Leerzeichen zu entfernen?

    Hab den Webservice in Safari und Google Chrome mal aufgerufen, dort sind keine Leerzeichen zu entnehmen.
    Gebe ich es aber in Xcode Log aus, dann versetzt er mir mein Datensatz nach etwa 20 Zeichen.

    Wie löse ich es am besten?

    Gruß

    Beispiel:

    Quellcode

    1. 2012-06-16 13:12:46.408 infoterm[10659:11f03] (
    2. {
    3. Date = " 11.06.2012";
    4. Meal = "H\U00e4hnchenschnitzel paniert mit Zitrone und Kartoffelgurkensalat (1,9)#2,15 / 2,85#Vegt. Gem\U00fcse-Kartoffelauflauf#1,90 / 2,55";
    5. Title = "Montag, 11.06.2012";
    6. },
    7. {
    8. Date = " 12.06.2012";
    9. Meal = "Spaghetti Bolognese (3)#1,90 / 2,55#Kartoffeltaschen mit Frischk\U00e4se gef\U00fcllt#1,90 / 2,55";
    10. Title = "Dienstag, 12.06.2012";
    11. },
    12. {
    13. Date = " 13.06.2012";
    14. Meal = "Ungarisches Gulasch mit Rondelli-Nudeln (14,15)#2,50 / 3,20#Cannelloni Classico mit Tomatenso\U00dfe und K\U00e4se \U00fcberbacken (12)#2,15 / 2,85";
    15. Title = "Mittwoch, 13.06.2012";
    16. },
    17. {
    18. Date = " 14.06.2012";
    19. Meal = "Chili con carne mit Semmel (1,8,9)#1,90 / 2,55#Currywurst mit Paprika Currysosse (9,12)#1,90 / 2,55";
    20. Title = "Donnerstag, 14.06.2012";
    21. },
    22. {
    23. Date = " 15.06.2012";
    24. Meal = "Pasta mit R\U00e4ucherlachsso\U00dfe (1,3)#2,15 / 2,85#4 Kartoffelpuffer mit Apfelmus (4,9)#1,90 / 2,55";
    25. Title = "Freitag, 15.06.2012";
    Alles anzeigen
    lernen, lernen, lernen :)
  • Hallo,

    mache Dir eine Kategorie zu NSMutableString bzw. zu NSString.

    Viele Grüße

    Quellcode

    1. -(BOOL)removeUnnecessarySpaces
    2. {
    3. NSUInteger originalLength = [self length];
    4. while([self replaceOccurrencesOfString:@" "
    5. withString:@" "
    6. options:0
    7. range:NSMakeRange(0, [self length])] > 0);
    8. [self replaceOccurrencesOfString:@" "
    9. withString:@""
    10. options:NSAnchoredSearch
    11. range:NSMakeRange(0, [self length])];
    12. [self replaceOccurrencesOfString:@" "
    13. withString:@""
    14. options:(NSAnchoredSearch | NSBackwardsSearch)
    15. range:NSMakeRange(0, [self length])];
    16. if(originalLength == [self length])
    17. {
    18. return NO;
    19. }
    20. return YES;
    21. }
    Alles anzeigen
  • Oder so . . .

    Quellcode

    1. NSLog(@"VORHER \n %@", daten); // "daten" ist Dein String.
    2. daten = [daten stringByReplacingOccurrencesOfString:@"\\U00df" withString:@"ß"]; // Sonderzeichen berichtigen !
    3. daten = [daten stringByReplacingOccurrencesOfString:@"\\U00e4" withString:@"ä"];
    4. daten = [daten stringByReplacingOccurrencesOfString:@"\\U00f6" withString:@"ö"];
    5. daten = [daten stringByReplacingOccurrencesOfString:@"\\U00fc" withString:@"ü"];
    6. NSLog(@"KORR-1 \n %@", daten);
    7. daten = [daten stringByReplacingOccurrencesOfString:@" " withString:@""]; // Leerzeichen entfernen !
    8. NSLog(@"NACHHER \n %@", daten);
    Alles anzeigen

    Ausgabe:
    2012-06-16 13:12:46.408 infoterm[10659:11f03] (
    {
    Date = " 11.06.2012";
    Meal = "Hähnchenschnitzel paniert mit Zitrone und Kartoffelgurkensalat (1,9)#2,15 / 2,85#Vegt. Gemüse-Kartoffelauflauf#1,90 / 2,55";
    Title = "Montag, 11.06.2012";
    },
    {
    Date = " 12.06.2012";
    Meal = "Spaghetti Bolognese (3)#1,90 / 2,55#Kartoffeltaschen mit Frischkäse gefüllt#1,90 / 2,55";
    Title = "Dienstag, 12.06.2012";
    },
    {
    Date = " 13.06.2012";
    Meal = "Ungarisches Gulasch mit Rondelli-Nudeln (14,15)#2,50 / 3,20#Cannelloni Classico mit Tomatensoße und Käse überbacken (12)#2,15 / 2,85";
    Title = "Mittwoch, 13.06.2012";
    },
    {
    Date = " 14.06.2012";
    Meal = "Chili con carne mit Semmel (1,8,9)#1,90 / 2,55#Currywurst mit Paprika Currysosse (9,12)#1,90 / 2,55";
    Title = "Donnerstag, 14.06.2012";
    },
    {
    Date = " 15.06.2012";
    Meal = "Pasta mit Räucherlachssoße (1,3)#2,15 / 2,85#4Kartoffelpuffer mit Apfelmus (4,9)#1,90 / 2,55";
    Title = "Freitag, 15.06.2012";
    }
    )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ramo ()

  • Zwischenzeitlich habe ich eine andere Lösung gefunden, möchte es aber weiterhin optimieren.

    Mein Webservice liefert eine Nachricht zurück, die Preise und Mahlzeiten liefern. Zwischen diesen Zwei Werten wird jeweils eine # platziert.
    Nun habe ich die Raute mit einem "\n" ausgewechselt. Diesen veränderten String lade ich in eine UIWebView. Wieso ersetzt er mir zwar diese # macht aber keinen Zeilenumbruch?

    HTML-Quellcode

    1. [tempString1 replaceCharactersInRange: [tempString1 rangeOfString: @"#"] withString: @"\n"];
    2. NSString *myDescriptionHTML = [NSString stringWithFormat:@"<html> \n"
    3. "<head> \n"
    4. "<style> \n"
    5. "body {font-family: "%@"; font-size: %@;}\n"
    6. "</style> \n"
    7. "</head> \n"
    8. "<body><b>%@</b><p>%@</p>\</body> \n"
    9. "</html>", @"Arial", [NSNumber numberWithInt:14], headString, tempString1];
    10. [mensaWebView loadHTMLString:myDescriptionHTML baseURL:nil];
    Alles anzeigen
    lernen, lernen, lernen :)
  • Ich würde Dir raten Deine HTML Texte aus dem Code zu entfernen und das ganze als Datei im Bündle zu hinterlegen.
    Somit kannst Du das immer schön anpassen.

    Oder so . . .

    Finde ich nicht so empfehlenswert, da Deine Anzahl Leerzeichen genau vorgeben sind.
    Zudem kann man das dann via Kategorie viel besser und flexibler lösen.

    Viele Grüße