NSString与NSMutableString的使用

1、创建NSString的三种方式

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        unichar data[6] = {97 , 98 , 99 , 100 , 101, 102};
        //① 使用Unicode数值数组初始化字符串
        NSString* str = [[NSString alloc]
                         initWithCharacters: data length:6];
        NSLog(@"%@" , str);
        char* cstr = "Hello, iOS!";
        //② 将C风格的字符串转换为NSString对象
        NSString* str2 = [NSString stringWithUTF8String:cstr];
        NSLog(@"%@" , str2);
        // 将字符串写入指定文件
        [str2 writeToFile:@"myFile.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
        //③ 读取文件内容,用文件内容初始化字符串
        NSString* str3 = [NSString stringWithContentsOfFile:@"NSStringTest.m" encoding:NSUTF8StringEncoding error:nil];
        NSLog(@"%@" , str3);
        
    }
    return 0;
}
2、NSString常用功能

#import <Foundation/Foundation.h>

int main(int argc , char * argv[])
{
	@autoreleasepool{
		NSString* str = @"Hello";
		NSString* book = @"《疯狂iOS讲义》";
    
		//①:在str后面追加固定的字符串,原来字符串对象并不改变,只是将新生成的字符串重新赋给str指针变量
		str = [str stringByAppendingString:@",iOS!"];
		NSLog(@"%@" , str);
		//②:获取字符串对应的C风格字符串
		const char* cstr = [str UTF8String];
		NSLog(@"获取的C字符串:%s" , cstr);
		//③:在str后面追加带变量的字符串。原来字符串对象并不改变,只是将新生成的字符串重新赋给str指针变量
		str = [str stringByAppendingFormat:@"%@是一本非常不错的图书."
			, book];
		NSLog(@"%@" , str);
		NSLog(@"str的字符个数为:%lu" , [str length]);
		NSLog(@"str按UTF-8字符集解码后字节数为:%lu" , [str 
			lengthOfBytesUsingEncoding:NSUTF8StringEncoding]);
		//④:获取str的前10个字符组成的字符串
		NSString* s1 = [str substringToIndex:10];
		NSLog(@"%@" , s1);
		//⑤:获取str的从第5个字符开始,与后面字符组成的字符串
		NSString* s2 = [str substringFromIndex:5];
		NSLog(@"%@" , s2);	
		//⑥:获取str从第5个字符开始,到第15个字符组成的字符串
		NSString* s3 = [str substringWithRange:NSMakeRange(5, 15)];
		NSLog(@"%@" , s3);
		//⑦:获取iOS在str中出现位置
		NSRange pos = [str rangeOfString:@"iOS"];
		NSLog(@"iOS在str中出现的开始位置:%ld, 长度为:%ld"
			, pos.location , pos.length);
		//⑧将str的所有字符转为大写
		str = [str uppercaseString];
		NSLog(@"%@" , str);
	}
}

3、NSMutableString

#import <Foundation/Foundation.h>

int main(int argc , char * argv[])
{
	@autoreleasepool{
		NSString* book = @"《疯狂iOS讲义》";
		//①:创建一个NSMutableString对象
		NSMutableString* str = [NSMutableString 
			stringWithString:@"Hello"];
		
		//②:追加固定字符串,字符串所包含的字符序列本身发生了改变,因此无需重新赋值
		[str appendString:@",iOS!"];
		NSLog(@"%@" , str);
		
		//③:追加带变量的字符串,字符串所包含的字符序列本身发生了改变,因此无需重新赋值
		[str appendFormat:@"%@是一本非常不错的图书." , book];
		NSLog(@"%@" , str);
		
		//④:在指定位置插入字符串,字符串所包含的字符序列本身发生了改变,因此无需重新赋值
		[str insertString:@"fkit.org" atIndex:6];
		NSLog(@"%@" , str);
		//⑤:删除从位置6到位置12的所有字符
		[str deleteCharactersInRange:NSMakeRange(6, 12)];
		NSLog(@"%@" , str);
		//⑥:将从位置6到位置9的字符串替换成Objective-C
		[str replaceCharactersInRange:NSMakeRange(6, 9)
			withString:@"Objetive-C"];
		NSLog(@"%@" , str);
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值