iOS-NSString常见方法
</pre><pre name="code" class="html">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// 1、创建NSString 方法1
NSString *str1 = @"abc";
NSLog(@"str addr %p val is %@ ",str1,str1);
// 2、格式化创建NSString
//字符串常量区
NSString *str2 =[NSString stringWithFormat:@"%@",@"ABCD"];
NSLog(@"str addr %p val is %@ ",str2,str2);
char buffer[200] ={'a','b','c','d'};
NSString *str3 =[NSString stringWithFormat:@"%s",buffer];
NSLog(@"str addr %p val is %@ ",str3,str3);
//堆区
char buffer1[200] ={'a','b','c','d'};
NSString *str4 =[[NSString alloc] initWithFormat:@"%s",buffer1];
NSLog(@"str addr %p val is %@ ",str4,str4);
// 3、写入到文件中区
NSString *str5 = @"I LOVE YOU ";
NSError *err;
[str5 writeToFile:@"/Users/yangsanchao/Desktop/test.txt" atomically:YES encoding:NSUTF8StringEncoding error:&err];
//************* 从文件中读取字符串显示到控制台上 ***************
NSString *str6 = [ NSString stringWithContentsOfFile:@"/Users/yangsanchao/Desktop/test.txt" encoding:NSUTF8StringEncoding error:&err];
if (err == nil){
NSLog(@"文件读取成功 %@ ",str6);
} else {
NSLog(@"file read faile %@",err);
}
//5> NSString的常见方法:
//5.1 - (NSString *)uppercaseString; 大写转小写
// - (NSString *)lowercaseString;小写转大写 I LOVE YOU TOO"
NSString *str7 = @"i love you";
NSString *str8 = @"i love you too ; I LOVE YOU TOO ";
NSLog(@"小写转大写 %@ ",[str7 uppercaseString]);
NSLog(@"大写转小写 %@ ",[str8 lowercaseString]);
NSLog(@"首字母大写 %@ ",[str7 capitalizedString]);//首字母大写
NSLog(@"是否相等 %d",[str7 isEqualTo:str7]);
/*逐字符比较大小;s1>s2: 1; s1=s2: 0 ; s1<s2: -1*/
NSLog(@"逐字符比较大小 %ld",[str8 compare:str7]);
NSLog(@"逐字符比较大小 %ld",[str7 compare:str8]);
NSLog(@"是否以xx开头 %d",[str7 hasPrefix:@"i"]);
NSLog(@"是否以xx结尾 %d",[str7 hasSuffix:@"you"]);
//读取NSRange 方法1
NSRange range = [str7 rangeOfString:@"you"];
NSLog(@"读取NSRange 方法1 %lu %lu",range.location,range.length);
//读取NSRange 方法2
NSLog(@"NSRange 方法2 %@",NSStringFromRange([str7 rangeOfString:@"you"]));
//NSRange range1 = [str7 rangeOfString:@"you" options NSBackwardsSearch];
NSLog(@"反方向搜索: %@", NSStringFromRange([str7 rangeOfString:@"you" options: NSBackwardsSearch]));
NSLog(@"从指定位置from开始%@",[str7 substringFromIndex:0]);
NSLog(@"从指定位置to开始%@",[str7 substringToIndex:6]);
NSLog(@"截取%@",[str7 substringWithRange: NSMakeRange(5, 3)]);
//NSLog(@"截取%@",[str7 substringWithRange: {5,4}]);
NSLog(@"替换%@",[str7 stringByReplacingOccurrencesOfString:@"you"
withString:@"myself"]);
//长度
NSLog(@"字符长度 %lu",str7.length);//.
NSLog(@"字符长度 %lu",[str7 length]);//对象调用
NSLog(@"某个字符 %c ",[str7 characterAtIndex:0]);
/*
- (double)doubleValue;
- (float)floatValue;
- (int)intValue;
- (char *)UTF8String;
*/
NSString *s1 = @"123";
double du = s1.doubleValue;
float fl = s1.floatValue;
int i = s1.intValue;
const char *s2 = s1.UTF8String;
printf("du:%.2f fl:%.2f i:%d s2:%s \n",du,fl,i,s2);
}
return 0;
}
iOS-NSString常见方法的更多相关文章
- ios NSString常见的字符串操作 分割 查找
1.NSString *str = [[NSString alloc]init]; //简单粗暴,基本用不到 2.NSString *str = [[NSString alloc]initWi ...
- ios NSString拼接方法总结
NSString* string; // 结果字符串 02 NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起来 03 04 / ...
- iOS的常见文件及程序的启动原理
一. iOS中常见文件 (一). Xcode6之前 创建项目,默认可以看见一个存放框架的文件夹 info文件以工程文件名开头,如:第一个项目-Info.plist 项目中默认有一个PCH文件 (二). ...
- Method Swizzle黑魔法,修改 ios 系统类库方法 SEL IMP
Method Swizzle黑魔法,修改 ios 系统类库方法 版权声明:本文为博主原创文章,未经博主允许不得转载. 一般来说,系统提供的方法已经足够开发了,但是有的时候有些需求用普通方法不好做. ...
- iOS常用公共方法
iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...
- UIPickerView常见属性、常见方法(包括代理方法和数据源方法)的一些说明
一.UIPickerView 1.UIPickerView的常见属性 // 数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id< ...
- iOS 常用公共方法
iOS常用公共方法 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat size = 0.0; NSError *error; N ...
- iOS常用加密方法(aes、md5、base64)
1.代码 iOS常用加密方法(aes.md5.base64) .AES加密 NSData+AES.h文件 // // NSData-AES.h // Smile // // Created by 周 ...
- C#图片处理常见方法性能比较
C#图片处理常见方法性能比较 来自:http://www.cnblogs.com/sndnnlfhvk/archive/2012/02/27/2370643.html 在.NET编程中,由于GDI ...
随机推荐
- python控制台实现打印带颜色的字体
控制台颜色分类: 数值表示的参数含义: 显示方式: 0(默认值).1(高亮).22(非粗体).4(下划线).24(非下划线). 5(闪烁).25(非闪烁).7(反显).27(非反显)前景色: 30(黑 ...
- css中文字两端对齐兼容IE
text-align: justify; text-justify:inter-ideograph;
- Vue+Vuex实现自动登录 升级版
Vue+Vuex实现自动登录 升级版 之前实现的版本在这里:Vue+Vuex实现自动登录 在之前实现的版本中,如果你进行测试,可以看到在浏览器的local Storage中,确实里面有了我 ...
- react项目中使用less并修改antd主题样式
一.react项目中使用less 1. 安装配置 npm i -D less less-loader 2. 查看webpack配置 npm run eject 此操作不可逆,生成新的目录. 3. 修改 ...
- bash leetcode
拓展:grep 193. ref: https://blog.csdn.net/yanglingwell/article/details/82343407 Given a text file fil ...
- IDEA插件记录
IDEA个性化设置 1. 开发工具 Free MyBatis plugin 作用:可以快速的在mybatis 的mapper 文件和xml文件中快速切换 Lombok 作用:为POJO类添加@Data ...
- JavaScript编程入门
写在前面: 不管容易还是简单 总要尝试才知道答案 1.JavaScript初探 JavaScript:轻量级脚本语言,是可插入HTML页面的编程代码. 将JavaScript插入HTML页 ...
- [开源] .Net orm FreeSql 1.5.0 最新版本(番号:好久不见)
废话开头 这篇文章是我有史以来编辑最长时间的,历时 4小时!!!原本我可以利用这 4小时编写一堆胶水代码,真心希望善良的您点个赞,谢谢了!! 很久很久没有写文章了,上一次还是在元旦发布 1.0 版本的 ...
- wordpress评论回复邮件通知功能
安装插件登录后台——点击“插件”——“安装插件”——按关键字搜索“Comment Reply Notification”——点击“现在安装”安装好后启用插件.如下图所示: 配置Comment Repl ...
- Java IO(十八) BufferedReader 和 BufferedWriter
Java IO(十八) BufferedReader 和 BufferedWriter 一.介绍 BufferedReader 和 BufferedWriter 是字符缓冲流,分别继承自 Reader ...