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 ...
随机推荐
- RAID0、RAID1及RAID5的区别详解
目前已有的RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)技术有很多种,但是RAID0.RAID1.RAID5是最常见的几种方案. 1 RAID0 ...
- EMAIL、用户名测试点
EMAIL xxxaa@xxx.xxx 1.没有@情况,如:aa.net 2.没有.符号,如:aa@qqcom 3..后面没有字符:如 xxxaa@xxx. 4..不在@后面, 如:xxxaa.@xx ...
- iOS开发常用技能点(持续更新中。。。)
1,以屏幕原点开始布局 (默认从导航栏原点布局) self.extendedLayoutIncludesOpaqueBars = YES; 2,向button发送点击事件 [self.playB ...
- D:Sequence Swapping
BaoBao has just found a strange sequence {<, >, <, >, , <, >} of length in his poc ...
- h5 编辑单选框的样式
radio单选框样式设置 input[type=radio] { display: inline-block; vertical-align: middle; width: 20px; height: ...
- JavaScript计时
JavaScript计时分两种 setTimeout:程序在隔几秒后执行 语法: setTimeout(function(){要执行的程序},xxxx) setInterval:程序每隔几秒执行 语法 ...
- 【Mac+Wind7】pytest + allure生成定制报告
一.升级Powershell(windows7及以上版本默认自带.其实普通的CMD命令行工具够用了) 我是Win7默认带的pw1.0,太古老了升级一下,地址如下,选择与自己windows版本匹配的连接 ...
- [译] 制作 Vue 3 的过程
原文链接: https://increment.com/frontend/making-vue-3 在过去的一年里,Vue 团队一直在研究 Vue.js 的下一个主要版本,我们希望在 2020 年上半 ...
- Android_四大组件之BroadcastReceiver
一.概述 BroadcastReceiver是广播接收器,接收来自 系统或应用发出的广播信息 并进行相应的逻辑处理. 自定义BroadcastReceiver只需继承android.content.B ...
- git的相关基础操作
一.git安装 从https://git-scm.com/下载相应版本安装即可,一路默认安装到底即可,安装目录可以自行选择 二.git配置 安装完git后在任意文件夹内单击鼠标右键,会出现Git GU ...