NSString
// —————————NSString
// NSString
//1.初始化:直接字符串、格式化字符串、文件读取内容初始化
NSString *str1 = @"hello world!";
NSString *str2 = [NSString stringWithFormat:@"start to printf: %@", str1];
NSString *str3 = [[NSString alloc] initWithContentsOfFile:@"/user/document/test.txt" encoding:NSUTF8StringEncoding error:nil];
// 字符串写入文件
[str1 writeToFile:@"/user/document/test.txt" atomically:YES];
// 字符串大写、小写、首字母大写
str1 = [str1 uppercaseString];
str1 = [str1 lowercaseString];
str1 = [str1 capitalizedString];
//字符串截取
str2 = [str1 substringFromIndex:5];
NSLog(@"string = %@", str2);
str2 = [str1 substringToIndex:5];
NSLog(@"string = %@", str2);
str2 = [str1 substringWithRange:NSMakeRange(0, 7)];
NSLog(@"string = %@", str2);
// 字符串是否以另一字符串开头或结尾
BOOL isStart = [str1 hasPrefix:@"hello"];
NSLog(@"isStart is : %i", isStart);
BOOL isEnd = [str1 hasSuffix:@"world!"];
NSLog(@"isEnd is : %i", isEnd);
// 获取文件后缀名
NSString *filePath = @"/document/test.txt";
NSString *ext = [filePath pathExtension];
NSLog(@"ext is : %@", ext);
// 字符串转整形
NSString *value = @"100";
int va = [value intValue];
NSLog(@"va is : %i", va);
// 字符串替换
str1 = [str1 stringByReplacingOccurrencesOfString:@"hello" withString:@"bye bye"];
// 字符串转整
int intVal = [str1 intValue];
NSLog(@"str to int : intVal= %i", intVal);
str1 = [[NSNumber numberWithInteger:intVal] stringValue];
NSLog(@"int to str = %@", str1);
// 字符串分割
NSString *splitStr = @"test1;test2;test3;test4";
NSArray *array = [splitStr componentsSeparatedByString:@";"];
NSLog(@"%@", array);
// 可变字符串
NSMutableString *mulStr = [[NSMutableString alloc] initWithCapacity:1];
[mulStr appendString:@"test1"];
[mulStr appendFormat:@"test2"];
[mulStr insertString:@";" atIndex:5];
[mulStr replaceCharactersInRange:NSMakeRange(0, 4) withString:@"replace test"];
[mulStr deleteCharactersInRange:NSMakeRange(0, 4)];
// 查找字符串包含
NSRange range = [mulStr rangeOfString:@"test"];
NSLog(@"location : %ld", range.location);
NSLog(@"mulStr is : %@", mulStr);
// 字符串比较 小于:-1 等于:0 大于:1
NSString *comStr1 = @"bbc";
NSString *comStr2 = @"bbc";
NSComparisonResult result = [comStr1 compare:comStr2];
NSLog(@"result=%ld", result);
NSString的更多相关文章
- NSString属性什么时候用copy,什么时候用strong?
我们在声明一个NSString属性时,对于其内存相关特性,通常有两种选择(基于ARC环境):strong与copy.那这两者有什么区别呢?什么时候该用strong,什么时候该用copy呢 ...
- iOS UIAlertController跟AlertView用法一样 && otherButtonTitles:(nullable NSString *)otherButtonTitles, ... 写法
今天写弹出框UIAlertController,用alertView习惯了,所以封装了一下,跟alertView用法一样,不说了,直接上代码: 先来了解一下otherButtonTitles:(nul ...
- 【去除NSString 字符串中的空格换行符】
@interface NSString (DeletWhiteSpace) // 返回一个去掉前后空格的字符串或者下划线,如果自己是一个nil 返回@“” - (NSString *)trimming ...
- NSString 的常用操作
NSString *testStr01=@"HelloWord"; NSString *testStr02=[testStr01 substringToIndex:];//取头(从 ...
- 时间戳转化为日期TimeStamp转NSDate转NSString
//时间戳处理 NSInteger time = [self.album.updatedAt integerValue] / 1000; NSNumber *timer = [NSNumber num ...
- iOS - Json解析精度丢失处理(NSString, Double, Float)
开发中处理处理价格金额问题, 后台经常返回float类型, 打印或转成NSString都会有精度丢失问题, 因此使用系统自带的NSDecimalNumber做处理, 能解决这问题:经过测试其实系统NS ...
- iOS NSString中的搜索方法rangeOfString
NSString *str = @"your://aaa?backscheme=my"; //在str中查找“backscheme=”,并返回一个NSRange类型的值,我们可以通 ...
- NSString相关操作
//创建一个字符串对象 NSString * str_1 = @"Hello"; //字面量方法 ; NSString * str_2 = [NSString stringWith ...
- NSString 和NSData 转换
NSString 转换成NSData 对象 NSData* xmlData =[@"testdata" dataUsingEncoding:NSUTF8StringEncoding ...
- NSString 初始化方法的内存比较
NSString *str1 = @"hello"; NSString *str2 = @"hello"; NSString *str3 = [NSString ...
随机推荐
- PHP 设计模式 笔记与总结(9)数据对象映射模式
[数据对象映射模式] 是将对象和数据存储映射起来,对一个对象的操作会映射为对数据存储的操作.例如在代码中 new 一个对象,使用数据对象映射模式就可以将对象的一些操作比如设置一些属性,就会自动保存到数 ...
- web_custom_request函数详解
在LR中当使用HTML录制方式时,录制的脚本中主要由函数web_link().web_submit_form().web_url().web_submit_data()组成,当使用HTTP录制方式时, ...
- P1379 八数码问题
aoapc上的八数码问题,在luogu上也有类似的题,p1379,经典题目,lrj给出了一个算法,同时给出了三种判重的方法.本来想用std::queue改写一下,但是出了各种问题,只好抄代码ac掉这道 ...
- kudu
Kudu White Paper http://www.cloudera.com/documentation/betas/kudu/0-5-0/topics/kudu_resources.html h ...
- Lazarus中Base64的操作
在字符串处理中,我们经常需要对文件编码然后再进行传输,通常会使用base64编码,在FreePascal中默认集成了这个单元,我们来介绍如何使用: 首先需要在引用单元的时候使用: use base64 ...
- Bootstrap 图标菜单按钮组件
---恢复内容开始--- 一.小图标组件 Bootstrap 提供了免费的 263 个小图标(数了两次),具体可以参考中文官网的组件 链接:http://v3.bootcss.com/componen ...
- CGROUP
二:cgroup中的概念在深入到cgroup的代码分析之前.先来了解一下cgroup中涉及到的几个概念:1:cgroup: 它的全称为control group.即一组进程的行为控制.比如,我们限制进 ...
- 窗口类型(Widget, Window, Dialog, Desktop, SubWindow等等)
http://doc.qt.io/qt-5/qwidget.html#windowFlags-prop http://doc.qt.io/qt-5/qtwidgets-widgets-windowfl ...
- int a=5,则 ++(a++)的值是?
编译出错:++(a++)先计算的是括号里的(a++),返回的结果是一个表达式,其值是5,不能对表达式进行赋值
- NGINX原理分析 之 SLAB分配机制
1 引言 众所周知,操作系统使用伙伴系统管理内存,不仅会造成大量的内存碎片,同时处理效率也较低下.SLAB是一种内存管理机制,其拥有较高的处理效率,同时也 有效的避免内存碎片的产生,其核心思想是预分配 ...