1 //
2 // main.m
3 // StringMK
4 //
5 // Created by LXC on 16/1/7.
6 // Copyright © 2016年 LXC. All rights reserved.
7 // 2016年01月07日23:51:29
8 //
9
10 #import <Foundation/Foundation.h>
11
12 int main(int argc, const char * argv[]) {
13 @autoreleasepool {
14 // insert code here...
15 NSLog(@"Hello, World!");
16
17 //C
18 char *s = "Hello C";
19 //OC
20 NSString *str = @"Hello";
21 //C --> OC
22 NSString *str1 = [NSString stringWithUTF8String:s];
23 NSLog(@"str1 = %@",str1);
24 //OC --> C
25 NSLog(@"str2 = %s",[str UTF8String]);
26
27 //创建字符串
28 NSString *str3 = @"IOS";//不需要自己释放内存
29 NSString *str4 = [[NSString alloc] init];//先分配内存 在初始化
30 str4 = @"IOS";
31
32 //格式化字符串
33 int a = 10;
34 int b = 20;
35
36 NSString *str5 = [NSString stringWithFormat:@"a = %d,b = %d",a,b];
37 NSLog(@"str5 = %@",str5);
38
39 //拼接字符串
40 NSString *str6 = [str5 stringByAppendingString:str3];
41 NSLog(@"str6 = %@",str6);
42
43 //大小写转换
44 NSString *str7 = @"ASDASDA";
45 NSString *str8 = [str7 lowercaseString];
46 NSLog(@"str8 = %@",str8);
47 NSString *str9 = [str7 uppercaseString];
48 NSLog(@"str9 = %@",str9);
49
50 //前缀和后缀的判断
51 NSString *str10 = @"www.liuxincheng.win";
52 BOOL hasPrFix = [str10 hasPrefix:@"www."];
53 if (hasPrFix) {
54 NSLog(@"YES");
55 }else{
56 NSLog(@"NO");
57 }
58 BOOL hasSuffix = [str10 hasSuffix:@".win"];
59 if (hasSuffix) {
60 NSLog(@"YES");
61 }else{
62 NSLog(@"NO");
63 }
64
65 //判断两个字符川是否相同
66
67 NSString *str11 = @"LXC";
68 NSString *str12 = @" LXC";
69 if ([str11 isEqualToString:str12]) {
70 NSLog(@"SAME");
71 }else{
72 NSLog(@"diff");
73 }
74
75 //比较字符串 NSComparisonResult
76
77 //分割字符串
78 //按照指定字符分割字符串
79 NSString *str13 = @"a,b,c,d,e,f";
80 NSArray *strarray = [str13 componentsSeparatedByString:@","];
81 for (NSString *str in strarray) {
82 NSLog(@"STR = %@",str);
83 }
84
85 //按照范围切割字符串
86 NSRange range = NSMakeRange(1,5);
87 NSString *str14 = [str13 substringWithRange:range];
88 NSLog(@"STR14 = %@",str14);
89
90 //从某一位开始截取
91 NSString *str15 = [str13 substringFromIndex:2];
92 NSLog(@"STR15 = %@",str15);
93 //截取到某一位
94 NSString *str16 = [str13 substringToIndex:2];
95 NSLog(@"STR16 = %@",str16);
96 //拆分到每一个字符
97 for(int i=0;i<[str13 length];i++){
98 NSLog(@"STRCHAR = %c",[str13 characterAtIndex:i]);
99 }
100
101
102 //查找
103 NSString *str17 = @"ad ad fe ef cv gh";
104 NSRange range1 = [str17 rangeOfString:@"cv"];
105 NSLog(@"range.location : %ld range1.length : %ld",range1.location,range1.length);
106
107 //替换
108 NSString *str18 = @"Hello ios ,hello lxc";
109 //替换某一个范围的内容
110 NSString *str19 = [str18 stringByReplacingCharactersInRange:NSMakeRange(0, 5) withString:@"LXC"];
111 NSLog(@"%@",str19);
112
113 //用指定字符串替换原字符串中的字串
114 /*
115 第一个参数是被替换的内容
116 第二个参数是要替换的内容
117 */
118 NSString *str20 = [str18 stringByReplacingOccurrencesOfString:@"Hello" withString:@"ni hao"];
119 NSLog(@"%@",str20);
120
121 //读取文件 文件来源
122 //本地文件 网络文件
123
124 NSString *str21 = @"www.liuxincheng.win";
125 //网络路径
126 NSURL *httpURL = [NSURL URLWithString:str21];
127 //本地路径
128 NSString *str22 = @"/Users/lxc/Desktop/test.txt";
129 NSURL *fileURL = [NSURL fileURLWithPath:str22];
130 //读取网络文件
131 NSString *httpstr = [NSString stringWithContentsOfURL:httpURL encoding:NSUTF8StringEncoding error:nil];
132 //读取本地文件
133 NSString *filestr = [NSString stringWithContentsOfFile:str22 encoding:NSUTF8StringEncoding error:nil];
134
135 NSLog(@"HTTP %@ FILE %@",httpstr,filestr);
136
137 //写入文件
138 NSString *str23 = @"jinzhuanch";
139 BOOL isok = [str23 writeToFile:@"/Users/lxc/Desktop/demo.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
140
141 if (isok) {
142 NSLog(@"OK");
143 }else{
144 NSLog(@"NO");
145 }
146 //可变字符串是字符串的子类
147 NSMutableString *str24 = [[NSMutableString alloc] initWithCapacity:10];
148 [str24 setString:@"kun"];
149
150 //追加字符串
151 [str24 appendFormat:@" siwole"];
152 NSLog(@"str24 = %@",str24);
153 int c = 10;
154 [str24 appendFormat:@" ---%i",c];
155 NSLog(@"str25 ---- %@",str24);
156
157 //替换字符串
158 NSRange ranges = [str24 rangeOfString:@"siwole"];
159 [str24 replaceCharactersInRange:ranges withString:@"sleep"];
160 NSLog(@"str26 --- %@",str24);
161
162 //插入字符串
163 [str24 insertString:@"OMG" atIndex:2];
164 NSLog(@"str27 == %@",str24);
165
166 //删除字符串
167 NSRange rangess = [str24 rangeOfString:@"OMG"];
168 [str24 deleteCharactersInRange:rangess];
169 NSLog(@"str28 ==== %@",str24);
170 }
171 return 0;
172 }