NSString/NSMutableString(基础)

#import <Foundation/Foundation.h>

/*
 NSString :不可变字符串
 NSMutableString:可变字符串
 */

<pre name="code" class="objc">//字符串创建的多种方式
NSString* stringCreate()
{
    /*
     字符串的创建
     */
    NSString *s1 = @"24345";
    
    NSString *s2 = [[NSString alloc]initWithString:@"343"];//使用第一种方便
    
    NSString *s3 = [[NSString alloc]initWithFormat:@"%d",243];
    
    //C字符串 --> OC字符串
    NSString *s4 = [[NSString alloc]initWithUTF8String:"sdf"];
    
    //OC字符串 -->C字符串,返回const char*
    const char *cs = [s4 UTF8String];
    
    //NSUTF8StringEncoding用到中文可以使用此种编码
    NSString *s5 = [[NSString alloc]initWithContentsOfFile:@"/Users/mac/Desktop/模型设计练习.txt" encoding:NSUTF8StringEncoding error:nil];
    
    //NSLog(@"\n%@",s5);
    
    // URL : 资源路径
    // 协议头://路径
    // file://
    // ftp://
    // http://
    // http://weibo.com/a.png
    
    //url添加协议头
    //NSURL *url = [[NSURL alloc] initWithString:@"file:///Users/apple/Desktop/模型设计练习.txt"];
    //NSURL *url3 = [NSURL URLWithString:@"file:///Users/mac/Desktop/模型设计练习.txt"];
    
    //此方法为本地文件路径不用加协议头
    NSURL *url2 = [NSURL fileURLWithPath:@"/Users/mac/Desktop/模型设计练习.txt"];
    NSString *s6 = [[NSString alloc]initWithContentsOfURL:url2 encoding:NSUTF8StringEncoding error:nil];
    //NSLog(@"s6 = %@",s6);
    
    /*
     一般都会有一个类方法跟对象方法配对
     [NSURL URLWithString:<#(NSString *)#>]
     [NSString stringWithFormat:(NSString *), ...]
     
     
     [NSString stringWithContentsOfFile:<#(NSString *)#> usedEncoding:<#(NSStringEncoding *)#> error:<#(NSError *__autoreleasing *)#>]
     [NSString stringWithContentsOfURL:<#(NSURL *)#> usedEncoding:<#(NSStringEncoding *)#> error:<#(NSError *__autoreleasing *)#>]
     */
    return s6;
}

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //可变字符串
        NSMutableString *mustr = [NSMutableString stringWithFormat:@"asdfds"];
        NSLog(@"mustr = %@",mustr);
        
        //appendString在原来字符串的末尾拼接字符串,没有返回值直接改变原字符串
        [mustr appendString:@"111"];
        NSLog(@"appended mustr = %@",mustr);
        
        //获取指定字符串的范围
        NSRange ra = [mustr rangeOfString:@"fd"];
        [mustr deleteCharactersInRange:ra];
        NSLog(@"deleted mustr = %@",mustr);
        
        //不可变字符串,内容不可变
        NSString *str = [NSString stringWithFormat:@"afdsg"];
        NSLog(@"str = %@",str);
        //有返回值,返回拼接后的新字符串,原字符串不改变
        NSString *str2 = [str stringByAppendingString:@"2222"];
        NSLog(@"str2  = %@",str2);
      
                      };
    return 0;
}
//把字符串导出写到文件中
void stringExport()
{
    //字符串的导出
    //atomically原子性,如果为yes则中途写入失败则不创建文件,否则写入失败仍然创建文件
    NSString *str = stringCreate();
    [str writeToFile:@"/Users/mac/Desktop/test1.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
    
    NSURL *url = [NSURL fileURLWithPath:@"/Users/mac/Desktop/test2.txt"];
    [str writeToURL:url atomically:YES encoding:NSUTF8StringEncoding error:nil];

}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值