- 創建常量字符串
NSString *string = @”This is a String”;//不足要釋放內粗 - 創建空字符串,然後賦值
NSString * string = [[NSString alloc] init];
string = @”This is a String”; - 通過字符串創建字符串
[[NSString alloc] initWithString:@”This is a String”];
[NSString stringWithString:@”This is a Strng”]; //不需要管理內存
或者
[[NSString alloc] initWithFormat:@”My age is %i”, 17]; 用C標準創建字符串
char *s = “This is a String”;
[[NSString alloc] initWithCString:cString encoding:NSUTF8StringEncoding];
或者:
[[NSString alloc] initWithUTF8String:cstring];
對應:
[NSString stringWithUTF8String:”This is a Sting”];
區別在於下面不需要管理內存從文件中讀取字符串
NSString *path = /Users/apple/a.txt;
NSString *str1 = [NSString stringWithContentsOfFile:path]; //不能解析中文,過期方法
或:
NSSerror *error = nil; //記錄錯誤信息
NSString *path = @"/User/apple/a.txt";
NSString *string = [[NSString alloc]initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];
if (error) {
NSString *desc = [error localizedDescription];
NSSLog(@"文件讀取失敗:%@", desc);
} else {
NSLog(@"文件讀取成功:%@", string);
}
// 將中文字符編碼轉換爲NSStringEncoding格式的編碼
NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
- URL讀取本地文件
NSURL *url = [NSURL URLWithString:@"file:///User/apple/a.txt"];
NSString *str2 = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncodeing error:nil];
- URL讀取遠程文本
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
NSString *str3 = [NSString stringWithContensOfURL:url encoding:NSUTF8StringEncodeing error:nil];