`
JavaZhuang
  • 浏览: 9602 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

5 3.Foundation2-NSString的创建

    博客分类:
  • IOS
 
阅读更多

5 3.Foundation2-NSString的创建

 

NSSTring的创建

1)、创建常量字符串

         NSString  *string  =  @”This  is  a  String!”;

2)、创建空字符串,给予赋值

         NSString  *string  =  [ [NSString alloc] init];

         String  =  @”This  is  a  String! ”;

3)、通过字符串创建字符串

         [[NSString  alloc]  initWithString :  @”This  is  a  String!”];

         // 或者 [[NSString  alloc]  initWithFormat : @”My age is %i”, 17 ];

4)、用标准C创建字符串

char  *cString = “这是一串中文”;

[[NSString  alloc]  initWithCString : cString  encoding:NSUTF8StirngEncoding];

 或者 [[NSString  alloc]  initWithUTF8String : cString];

//字符串编码可以在NSString.h中查阅

 

例一:

Main.m

 //

//  main.m

//  Foundation1 - 结构体

//

//  Created by qwz on 13-12-9.

//  Copyright (c) 2013 renhe. All rights reserved.

//

 

#import <Foundation/Foundation.h>

 

#pragma mark NSString的创建

void stringCreate(){

    //这种方式创建出来的字符串是不需要释放的

    NSString *str1 = @"A String!";

    NSString *str2 = [[NSString alloc] init];

 

    str2 = @"A String!";

    [str2 release];

    

    NSString *str3 = [[NSString alloc] initWithString:@"A String!"];

    [str3 release];

    //不需要管理内存

    str3 = [NSString stringWithString:@"A String!"];

    

    NSString *str4 = [[NSString alloc] initWithUTF8String:"A String!"];

    [str4 release];

    str4 = [NSString stringWithUTF8String:"A String!"];

    

    NSString *str5 = [[NSString alloc] initWithFormat:@"My age is %i and height is %.2f",19, 1.55f];

    

    // 这句代码放在中间会造成2个错误;

    // 1、前面创建的字符串没有被释放

    // 2、后面创建的字符串会释放过度,造成野指针错误

    //str5 = [NNString stringwithFormat::@"My age is %i and height is %.2f",19, 1.55f]

    

    NSLog(@"str5:%@", str5);

    [str5 release];

    str5 = [NSString stringWithFormat:@"My age is %i and height is %.2f",19, 1.55f];

}

 

void stringCreate2(){

    //从文件中读取文本

    NSString *path = @"/users/apple/Desktop/test.txt";

    //这个方法已经过期,不能解析中文

    //NNString *str1 = [NNString stringWithContentOfFile:path];

    

    //定义一个NSError变量

    NSError *error;

    

    //指定字符串编码为UTF-8

    //NSString *str1 = [NSStrng stringWithContentOfFile:path encoding:NSUTF8StringEncoding error:nil];  --该行是正确的

    NSString *str1 = [NSString stringWithContentOfFile:path encoding:NSUTF8StringEncoding error:&error];

    

    if(error == nil){

        NSLog(@"读取文件成功:%@", str1);

    }else{

        NSLog(@"读取文件失败:%@", error);

    }

    

    

    NSURL *url = [NSURL URLWithString:@"/users/apple/Desktop/test.txt"];

    NSString *str2 = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

    NSLog(@"%@", str2);

    

    NSURL *url2 = [NSURL URLWithString:@"http://www.baidu.com"];

    NSString *str3 = [NSString stringWithContentsOfURL:url2 encoding:NSUTF8StringEncoding error:nil];

    NSLog(@"%@", str3);

}

 

int main(int argc, const char * argv[])

{

    @autoreleasepool {

        //stringCreate();

        stringCreate2();

    }

    return 0;

}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics