// —————————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的更多相关文章

  1. NSString属性什么时候用copy,什么时候用strong?

           我们在声明一个NSString属性时,对于其内存相关特性,通常有两种选择(基于ARC环境):strong与copy.那这两者有什么区别呢?什么时候该用strong,什么时候该用copy呢 ...

  2. iOS UIAlertController跟AlertView用法一样 && otherButtonTitles:(nullable NSString *)otherButtonTitles, ... 写法

    今天写弹出框UIAlertController,用alertView习惯了,所以封装了一下,跟alertView用法一样,不说了,直接上代码: 先来了解一下otherButtonTitles:(nul ...

  3. 【去除NSString 字符串中的空格换行符】

    @interface NSString (DeletWhiteSpace) // 返回一个去掉前后空格的字符串或者下划线,如果自己是一个nil 返回@“” - (NSString *)trimming ...

  4. NSString 的常用操作

    NSString *testStr01=@"HelloWord"; NSString *testStr02=[testStr01 substringToIndex:];//取头(从 ...

  5. 时间戳转化为日期TimeStamp转NSDate转NSString

    //时间戳处理 NSInteger time = [self.album.updatedAt integerValue] / 1000; NSNumber *timer = [NSNumber num ...

  6. iOS - Json解析精度丢失处理(NSString, Double, Float)

    开发中处理处理价格金额问题, 后台经常返回float类型, 打印或转成NSString都会有精度丢失问题, 因此使用系统自带的NSDecimalNumber做处理, 能解决这问题:经过测试其实系统NS ...

  7. iOS NSString中的搜索方法rangeOfString

    NSString *str = @"your://aaa?backscheme=my"; //在str中查找“backscheme=”,并返回一个NSRange类型的值,我们可以通 ...

  8. NSString相关操作

    //创建一个字符串对象 NSString * str_1 = @"Hello"; //字面量方法 ; NSString * str_2 = [NSString stringWith ...

  9. NSString 和NSData 转换

    NSString 转换成NSData 对象 NSData* xmlData =[@"testdata" dataUsingEncoding:NSUTF8StringEncoding ...

  10. NSString 初始化方法的内存比较

    NSString *str1 = @"hello"; NSString *str2 = @"hello"; NSString *str3 = [NSString ...

随机推荐

  1. Redis 笔记与总结5 Redis 常用命令之 键值命令 和 服务器命令 && 高级应用之 安全性 和 主从复制

    Redis 提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以在 Linux 终端使用. 1. 键值相关命令: 2. 服务器相关命令 键值相关命令 ① keys 命令 返回满足给定 pat ...

  2. Web 在线文件管理器学习笔记与总结(19)上传文件

    dir.func.php 中添加方法: /* 上传文件 */ function uploadFile($fileInfo,$path,$allowExt = array('jpg','jpeg','p ...

  3. Ruby--CSV

    1. 解析CSV: (1)读取文件:csv = CSV.read("#{Rails.root}/public/data/statecountycity.csv", :headers ...

  4. 【转载】Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  5. Nginx平滑重启

    kill -HUP cat /usr/local/nginx/logs/nginx.pid`

  6. 微信公众账号开发教程(一) 基本原理及微信公众账号注册 ——转自http://www.cnblogs.com/yank/p/3364827.html

    微信公众账号开发教程 基本原理 在开始做之前,大家可能对这个很感兴趣,但是又比较茫然.是不是很复杂?很难学啊? 其实恰恰相反,很简单.为了打消大家的顾虑,先简单介绍了微信公众平台的基本原理. 微信服务 ...

  7. QWidget 键盘事件 焦点(QApplication源码)

    在Qt中,键盘事件和QWidget的focus密不可分:一般来说,一个拥有焦点(focus)的QWidget或者grabKeyboard()的QWidget才可以接受键盘事件. 键盘事件派发给谁? 如 ...

  8. spring.net使用

    1.方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  9. python StringIO

    模块是用类编写的,只有一个StringIO类,所以它的可用方法都在类中. 此类中的大部分函数都与对文件的操作方法类似. 例: 复制代码 代码如下: #coding=gbk   import Strin ...

  10. LightOj1137 - Expanding Rods(二分+数学)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1137 题意:有一根绳子的长度为l,在有温度的情况下会变形为一个圆弧,长度为 l1 = ...