Ich habe einige Probleme, bevor ich versuche, das letzte Zeichen eines NSStrings zu entfernen. Ich bin ein bisschen ein Neuling in Objective-C und ich habe keine Ahnung, wie ich das machen soll.
Könntet ihr mich zum Leuchten bringen?
Ich habe einige Probleme, bevor ich versuche, das letzte Zeichen eines NSStrings zu entfernen. Ich bin ein bisschen ein Neuling in Objective-C und ich habe keine Ahnung, wie ich das machen soll.
Könntet ihr mich zum Leuchten bringen?
Antworten:
NSString *newString = [oldString substringToIndex:[oldString length]-1];
Beachten Sie immer die Dokumentation :
So fügen Sie für Ihren Fall relevanten Code hinzu:
NSString *str = textField.text;
NSString *truncatedString = [str substringToIndex:[str length]-1];
#import <Foundation/Foundation.h>Mac OS X 10.0 oder höher / iOS 2.0 oder höher verwenden, ist es ja richtig. Stellen Sie sicher, dass Sie die in den Xcode-Einstellungen festgelegte Dokumentation herunterladen, um die automatische Vervollständigung der Methode zu erhalten.
Versuche dies:
s = [s substringToIndex:[s length] - 1];
NSString *string = [NSString stringWithString:@"ABCDEF"];
NSString *newString = [string substringToIndex:[string length]-1];
NSLog(@"%@",newString);
Sie können = ABCDE sehen
NSString = *string = @"abcdef";
string = [string substringToIndex:string.length-(string.length>0)];
Wenn ein zu löschendes Zeichen vorhanden ist (dh die Länge der Zeichenfolge größer als 0 ist), wird
(string.length>0)1 zurückgegeben, sodass der Code Folgendes zurückgibt:
string = [string substringToIndex:string.length-1];
Wenn KEIN Zeichen zum Löschen vorhanden ist (dh die Länge der Zeichenfolge ist NICHT größer als 0), wird
(string.length>0)0 zurückgegeben, sodass der Code Folgendes zurückgibt:
string = [string substringToIndex:string.length-0];
das verhindert Abstürze.
Dieser Code gibt nur das letzte Zeichen der Zeichenfolge zurück und entfernt es nicht:
NSString *newString = [oldString substringToIndex:[oldString length]-1];
Sie können dies stattdessen verwenden, um das letzte Zeichen zu entfernen und die verbleibenden Werte einer Zeichenfolge beizubehalten:
str = [str substringWithRange:NSMakeRange(0,[str length] - 1)];
und auch mit substringToIndex mit zu einem NSString 0 Länge wird zu Abstürzen führen.
Sie sollten vorher eine Validierung hinzufügen, wie folgt:
if ([str length] > 0) {
str = [str substringToIndex:[s length] - 1];
}
Damit ist es sicher, die Teilzeichenfolgenmethode zu verwenden.
HINWEIS: Apple lehnt Ihre Anwendung ab, wenn sie für Abstürze anfällig ist.
Einfacher und bester Ansatz
[mutableString deleteCharactersInRange:NSMakeRange([myRequestString length]-1, 1)];