iOS NSString 공통 작업 및 데이터 전환

7089 단어

1. NSString


1. NSData를 NSString으로 전환
 NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];

2. NSString을 NSData로 전환 - (NSData*) dataUsingEncoding: (NSSStringEncoding) encoding;3. 문자열 중 하나 또는 문자열 삭제
  [_display deleteCharactersInRange:NSMakeRange(index_of_char_to_remove, 1)];

4. 파일에서 문자열 읽기: initWithContentsOfFile 방법
  NSString *path = @"***.text";  
  NSString *astring = [[NSString alloc] initWithContentsOfFile:path];

5. 파일에 문자열 쓰기: writeToFile 방법
  NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];  
  NSString *path = @"astring.text";      
  [astring writeToFile: path atomically: YES];

6. 두 문자열 비교 1>, C로 비교:strcmp 함수
char string1[] = "string!";  
char string2[] = "string!";  
if(strcmp(string1, string2) = = 0)  {  
    NSLog(@"1");  
}

2>, isEqualToString 방법
NSString *astring01 = @"This is a String!";  
NSString *astring02 = @"This is a String!";  
BOOL result = [astring01 isEqualToString:astring02];  
NSLog(@"result:%d",result);

3>,compare 방법(comparer가 되돌아오는 세 가지 값)
NSString *astring01 = @"This is a String!";  
NSString *astring02 = @"This is a String!";      
BOOL result = [astring01 compare:astring02] = = NSOrderedSame;      
NSLog(@"result:%d",result);      
//NSOrderedSame   

7. 문자열의 대소문자 변경
NSString *string1 = @"A String";   
NSString *string2 = @"String";   
NSLog(@"string1:%@",[string1 uppercaseString]);//   
NSLog(@"string2:%@",[string2 lowercaseString]);//   
NSLog(@"string2:%@",[string2 capitalizedString]);//   

8. 문자열에서 하위 문자열 검색
NSString *string1 = @"This is a string";  
NSString *string2 = @"string";  
NSRange range = [string1 rangeOfString:string2];  
int location = range.location;  
int leight = range.length;  
NSString *astring = [[NSString alloc] initWithString:[NSString    stringWithFormat:@"Location:%i,Leight:%i",location,leight]];

9. 하위 문자열 1>, -substringToIndex: 문자열의 시작 부분에서 지정한 위치까지 캡처하지만 이 위치의 문자는 포함하지 않음
NSString *string1 = @"This is a string";  
NSString *string2 = [string1 substringToIndex:3];  
NSLog(@"string2:%@",string2);  

2>, -substringFromIndex: 지정된 위치로 시작하고 그 다음의 모든 문자를 포함합니다.
NSString *string1 = @"This is a string";  
NSString *string2 = [string1 substringFromIndex:3];  
NSLog(@"string2:%@",string2);  

3>, -substringWithRange://주어진 위치, 길이에 따라 문자열에서 임의로 하위 문자열을 캡처합니다
NSString *string1 = @"This is a string";  
NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];  
NSLog(@"string2:%@",string2);

10, 확장자 가져오기: [PathExtension]
11. 문자열로 시작하거나 끝낼지 판단
     -(BOOL) hasPrefix:(NSString *) aString; // 
     -(BOOL) hasSuffix:(NSString *) aString; // 

둘째, NSMutableString


1. 문자열에 용량 할당
NSMutableString *String;  
String = [NSMutableString stringWithCapacity:40];  

2. 기존 문자열 뒤에 문자 추가
 NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
  //[String1 appendString:@", I will be adding some character"];  
  [String1 appendFormat:[NSString stringWithFormat:@", I will be adding some character"]];  

3. 주어진 범위와 길이에 따라 기존 문자열에서 문자 삭제
  NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
 [String1 deleteCharactersInRange:NSMakeRange(0, 5)];  

4. 이미 있는 문자열 뒤에 지정된 위치에 주어진 문자열을 삽입한다
NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
[String1 insertString:@"Hi! " atIndex:0];  

5. 기존 빈 문자를 다른 문자열로 바꾸기
NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
[String1 setString:@"Hello Word!"];  

6. 주어진 범위와 문자열로 대체된 기존 문자
NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
[String1 replaceCharactersInRange:NSMakeRange(0, 4) withString:@"That"];  

7. 문자열에 다른 문자열이 포함되어 있는지 판단합니다 (접두사, 접두사)
1>, 문자열이 다른 문자열로 시작하는지 확인합니다 - (BOOL)hasPrefix: (NSString*)aString;
NSString *String1 = @"NSStringInformation.txt";  
[String1 hasPrefix:@"NSString"] = = 1 ?  NSLog(@"YES") : NSLog(@"NO");  
[String1 hasSuffix:@".txt"] = = 1 ?  NSLog(@"YES") : NSLog(@"NO");  

2>, 문자열이 다른 문자열을 포함하고 있는지 찾기 - (NSRange)range OfString: (NSString*)aString, 이 점은 앞에서 문자열에서 로프 문자열을 찾았습니다.

3. 문자열과 수조의 상호 전환


1. 문자열에서 그룹으로 분할
NSString *string = [[NSString alloc] initWithString:@"One,Two,Three,Four"];   
NSArray *array = [string componentsSeparatedByString:@","];  

2. 배열에서 문자열로 결합
NSArray *array = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];  
NSString *string = [array componentsJoinedByString:@","];  

4. 문자열 비교 방법 비교


1>, isEqualToString: 수신자와 매개 변수로 전달된 문자열의 내용이 같은지 비교할 수 있으며, yes와 no2>, ==: 지침 수치만 판단할 수 있으며, 그들이 가리키는 내용 3>,compare: 두 문자열을 비교할 수 있습니다.대소문자compare를 구분하면 수신 대상과 전송된 문자열을 문자별로 비교하여 NSComparisonResult(매거 형식)를 되돌려 결과를 표시합니다.
    typedef enum _NSComparisonResult{ 
         NSOrderedAscending=-1; 
         NSOrderedsame; 
         NSOrderedDescending; 
     } NSComparisonResult; 

4>, compare: options: (options는 비트 마스크로 | 옵션 표시 옵션 추가) options 옵션: NSCaseInsensitiveSearch: 대소문자 구분 없음 NSLiteralSearch: 완전 비교, 대소문자 구분 NSNumbericSearch: 문자열 값이 아닌 문자열 개수 비교

5. 자전이 문자열로 바뀐다

    NSError *parseError = nil;
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&parseError];
    
    NSString *str = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@" " message:str delegate:self cancelButtonTitle:@" , " otherButtonTitles:@" ", nil];
    
    [alert show];

일치 문자열 헤더 또는 끝


hasPrefixe 일치 문자열 헤더 haSuffix 일치 문자열의 꼬리
NSString *string1 = @" ";  
NSString *string2 = @" ";  
//   
if([string1 hasPrefix:@" "])  
{  
      NSLog(@" string1 ");  
}  
  //   
if([string2 hasSuffix:@" "])  
{  
    NSLog(@"string2 ");  
}

좋은 웹페이지 즐겨찾기