【iOS开发】-NSString的扩展使用
第一:基本数据类型与字符串转换
//基本数据类型(int float,double char)
1)基本数据类型—>NSString
//1.int类型换换成字符串
int a = 88;
NSString * str1 = [NSString stringWithFormat:@"%d",a];
//2.float -> NSString
float f = 0.8;
NSString * str3 = [NSString stringWithFormat:@"%.1f",f];
//3.double - >NSstring
double d = 66.2222;
NSString * str4 = [NSString stringWithFormat:@"%.4f",d];
//4.char - > NSString
char c = ‘b';
NSString * str5 = [NSString stringWithFormat:@"%c",c];
2)NSString-—>基本数据类型
//5.NSString -> int
NSString * str6 = @"1";
int i1 = [str6 intValue];
//5.NSString -> float
NSString * str7 = @“8.8";
float f1 = [str7 floatValue];
//6.NSString -> double
NSString * str8 = @"8.88";
double d1 = [str8 doubleValue];
//注意:当你要把字符串转换成某种基本数据类型的时候,一定要确定你要转化你的数据是正确
NSString * str9 = @“a123";
int i2 = [str9 intValue];
//7.将字符串中的字母转换成大写
NSString * str10 = @“apple";
NSString * tmpStr1 = [str10 uppercaseString];
NSLog(@"tmpStr1 %@ str10 %@",tmpStr1,str10);
//8.将字符中的字母转换成小写
NSString * str11 = @“APPLE";
NSString * tmpStr2 = [str11 lowercaseString];
//9.将首字母大写
NSString * str12 = @“apple";
NSString * tmpStr3 = [str12 capitalizedString];
第二:字符串重组
//1.多个数据拼接成一个字符串
int year = 1990;
int month = 8;
int day = 08;
NSString * date = [NSString stringWithFormat:@"%d年%d月%d日",year,month,day];
NSString * address = @“上海";
NSString * dateAndAddrss = [NSString stringWithFormat:@"%@地址:%@",date,address];
//2.字符串的末尾追加新的字符
NSString * str1 = @"apple.";
NSString * str2 = [str1 stringByAppendingString:@"iphone"];
//3.在指定的范围追加字符串
NSString * str3 = @"apple";
NSRange range = {4,0};
//location代表的时从哪个索引开始插入,length 代表的意思可以覆盖几个字符
NSString * str4 = [str3 stringByReplacingCharactersInRange:range withString:@"iphone"];
//4.使用新的字符,替换原有的字符
NSString * str5 = @“apple,iPhone";
NSString * str6 = [str5 stringByReplacingOccurrencesOfString:@“p" withString:@“q"];
//5.在字符串中删除特定的某些字符 胡汉三 hhs
NSString * str7 = @“apple-iphone—.iwatch.itouch";
NSString * str8 = [str7 stringByReplacingOccurrencesOfString:@"-" withString:@""];
//6.去掉字符串中的空格
NSString * str9 = @“apple iPhone iwatch";
NSString * str10 = [str9 stringByReplacingOccurrencesOfString:@" " withString:@""];
第三: 字符串写入文件
3.1:将字符串写入到文件
NSString * content = @"今天马路上捡到一分钱";
NSString * path = @"/Users/tengfei/Desktop/test.txt";
//1.NSString *:要给入文件目录(并且要包括文件名称)
//2.atomically : YES
//3.NSUTF8StringEncoding 国际通用的编码格式
//4.NSError 是用来记录错误信息的
NSError * error;
//writeToFile:<#(NSString *)#> atomically:<#(BOOL)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>
BOOL result = [content writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];
if(result)
{
NSLog(@"文件创建成功");
}
else
{
NSLog(@"error %@",error);
}
3.2:从文件中读取字符串内容
//要给出文件路径
//你写入文件的时候,使用的是什么编码格式,读取的时候就要用什么编码格式
NSString * path = @"/Users/tengfei/Desktop/test.txt";
NSError * error;
NSString * str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];
if (error != nil)
{
NSLog(@"error message %@",error);
}
else
{
NSLog(@"str content %@",str);
}
第四:可变字符串
//1.创建可变字符串
//NSMutableString 继承自 NSString
//NSMutableString 拥有NSString所有的属性以及方法
//NSMutableString * muStr = [[NSMutableString alloc] init];
NSMutableString * muStr = [[NSMutableString alloc] initWithCapacity:0];
//是初始化字符串内容
[muStr setString:@"apple"];
//动态的给字符串末尾追加新值
[muStr appendString:@".com"];
//在指定的索引位置,插入字符串
[muStr insertString:@“iphone" atIndex:3];
//删除指定范围的字符串
//你要删除的长度,一定不能够超出字符串的的长度,导致异常Range or index out of bounds
NSRange range = {3,7};
// [muStr deleteCharactersInRange:range];
[muStr replaceCharactersInRange:range withString:@"苹果"];
【iOS开发】-NSString的扩展使用的更多相关文章
- iOS开发系列--App扩展开发
概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...
- iOS开发---分类和扩展(Categories和Extensions)
1.分类能够做到的事情主要是:即使在你不知道一个类的源码情况下,向这个类添加扩展的方法. 此外,分类能够保证你的实现类和其他的文件区分开. 1 #import “UIViewControl ...
- iOS开发——NSString小结
1.创建常量字符串. NSString *astring = @"This is a String!"; 2.创建空字符串,给予赋值. NSString *astring = ...
- iOS开发-NSString去掉所有换行及空格
1.去掉字符串两端的空格及回车 - (NSString *)removeSpaceAndNewline:(NSString *)str{ NSString *temp = [str stringByT ...
- iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转
iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转 1. 字典转Json字符串 // 字典转json字符串方法 -(NSString *)convertToJs ...
- iOS开发系列--打造自己的“美图秀秀”
--绘图与滤镜全面解析 概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz ...
- iOS开发系列--Swift进阶
概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...
- iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总
--系统应用与系统服务 iOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录.微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等.今天将和大家一起学习如何使用 ...
- iOS开发系列--地图与定位
概览 现在很多社交.电商.团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的.的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式.例如你到了一个 ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
随机推荐
- TP框架中同时使用“or”和“and”
今天在tp中遇到一个问题,可能这并不算难的问题,但是我还是分享一下 以下是tp手册里面查询or的方式 $User = M("User"); // 实例化User对象 $where[ ...
- JS打包与代码分割
参考来源:https://github.com/ruanyf/webpack-demos#demo01-entry-file-source 后面的代码:https://github.com/94713 ...
- 剑指Offer(书):矩阵中的路径
题目: * 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.* 路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.* 如果一条路径经 ...
- npm start问题
问题:在执行命令npm start 是出现下列问题: npm [] WARN invalid config loglevel="notice" [] npm WARN invali ...
- 【HIHOCODER 1052 】基因工程(贪心)
链接 问题描述 小Hi和小Ho正在进行一项基因工程实验.他们要修改一段长度为N的DNA序列,使得这段DNA上最前面的K个碱基组成的序列与最后面的K个碱基组成的序列完全一致. 例如对于序列"A ...
- HDU 1087 Super Jumping! Jumping! Jumping! (LIS的最大和)
题意: 给定n个数的序列, 找出最长上升子序列和. 分析: #include<cstdio> #include<iostream> #include<queue> ...
- You Are the One (区间DP)
The TV shows such as You Are the One has been very popular. In order to meet the need of boys who ar ...
- noip 2010 数字统计
数位dp解水题 luogu1179 dp[i][j]表示 有i位,且首位是j(包括0) 的 ‘2’的个数 dp[i][j]={ Σ(dp[i-1][k]),j!=2; Σ(dp[i-1][k])+va ...
- Linux怎么读? Linux读音考古一日游
Linux怎么读? Linux读音考古一日游/*凡是准备踏入Linux大门的叉子们(N年不关注了,不知道这个称呼是否还有),都必须经历疑问 那就是linux到底怎么读? 也许有些人很容易 什么里纽克 ...
- hdu 2438 Turn the corner [ 三分 ]
传送门 Turn the corner Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...