基础类-NSString

基本常识:

NSStringEncoding中常用的字符编码:

NSASCIIStringEncoding

NSUTF8StringEncoding

NSUnicodeStringEncoding

--常用的替换符-------------- 
%@ NSString实例 
%d,%D,%i 整数 
%u,%U 无符号整数 
%x 将无符号整数以十六进制小写字母显示 
%X 将无符号整数以十六进制大写字母显示 
%f 小数 
%c 字符 
%s C语言字符串 
%% 显示%字符本身

--NSRange的定义 
typedef struct _NSRange 

     unsigned int location; 
     unsigned int length; 
}NSRange;

NSMakeRange函数 
--这个函数比较特殊 返回一个NSRange的对象。 
 NSMakeRanger(unsigned int location,unsigned int length);

例如: 
NSRange range = NSMakeRanger(0,5);

1.初始化NSString的方法:

a.常用基本常见创建NSString对象方法:

字面量方式;   alloc+init ;   initWithString方法;  initWithCString用标准c方式创建  ;stringWithFormat创建格   式化字符串;

NSMutableString的生成: stringWithString ,initWithString

b.常用方法:

计算长度 length ;

字符串连接: -(NSString *)stringByAppendingString:(NSString * )string;

-(NSString *)stringByAppendingFormat:(NSString *)format....

追加方法: +appendString  appendFormat

插入方法: +insertString

删除方法: +deleteCharactersInRange

比较函数: isEqualToString    比较前缀:hasPrefix   比较后缀:hasSuffix

字符串检索(NSrange是返回类型):rangeofString的三种形式

- (NSRange)rangeOfString:(NSString *)subString; 
     - (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask; 
     - (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask  range: (NSRange)range;

------------mask常用选项列表------------- 
     NSCaseInsensitiveSearch          不区分字母大小写 
     NSLiteralSearch                        对字符串进行字节单位的比较,一般可提高检索速度 
     NSBackwardsSearch                 从范围的末尾开始检索 
     NSAnchoredSearch                   仅检索制定范围的前部。忽略字符串中间的检索字符

截取字符串: substringToIndex(不含开头)   substringFromIndex   substringWithRange

读取文本文件: +(id)stringWithContentsOfFile:(NSStirng*)path usedEncoding:(NSStringEncoding *)enc  error:(NSError**)error  //自动释放内存

-(id)initWithContentsOfFile:(NSString *)path  encoding:(NSStringEncoding)enc error:(NSError**)error

例如: 
     NSString *string = [NSString stringWithContentsOfFile:@"/user/test/yw.txt" encoding:NSUTF8StringEncoding error:&error];

输出文本文件:

NSString 
     - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error 
     //参数 atomically 暂时将文件保存到辅助文件中 
     //path 
     The file to which to write the receiver. If path contains a tilde (~) character, you must expand it withstringByExpandingTildeInPath before invoking this method.

文件要写入接收器。如果路径中包含一个符号(?)字符,你必须在调用此方法之前展开withstringByExpandingTildeInPath。
    ----下面是网上找的例子 感谢 @chenshizero 
    //扩展路径 
    NSString *Path = @"~/NSData.txt"; 
    NSString *absolutePath = [Path stringByExpandingTildeInPath]; 
    NSLog(@"absolutePath:%@",absolutePath); 
    NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);

//文件扩展名 
    NSString *Path = @"~/NSData.txt"; 
    NSLog(@"Extension:%@",[Path pathExtension]);

基础类-NSString,布布扣,bubuko.com

时间: 2024-11-06 06:09:17

基础类-NSString的相关文章

iOS 基础类解析 - NSString

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 以下从苹果官网摘录的 NSString 的目录信息,大家发现了,条目太多,不过看一下分类,一共24个,好像少很多了吧,就是这样,理解了每一个分类所

继承NSString,NSArray 怎么写

今天在进行一个字符串测试的时候,自定义了一个继承自NSString的类,但是出现了一些问题,查阅官方文档后得到了下面这些结论 在Objective-C中,对于NSString.NSArray等一些系统的基础类,苹果公司不推荐继承创建新类的,要想给它们扩展功能只能给它们添加新的categroy(类目). 但是直接继承的话,也是可行的,只是会出现各种问题 以NSString为例 首先,创建一个NSString的子类 BFString,不添加任何方法和属性 直接创建一个BFString的实例对象,是没

iOS - 字符串(NSString)

/*________________________NSString(不可变字符串)________________________*/ //________________________1.字符串的创建___________________________________// //创建字符串常量 NSString *string1 = @"Hello";  //内容不变 string1 = @"Hello world"; //创建字符串 NSString *st

IOS开发-ObjC-NSString

NSString是oc语言Foundation框架中常用的类,我根据每个方法的功能将NSString的常用方法分为创建字符串.初始化字符串.判断和比较字符串.大写和小写相互转化.字符串的截取.类型转换等功能.它的方法按功能分如图所示(具体每个方法的作用我在后后面有详细的备注,其实根据驼峰命令也基本可以看出每个方法的作用),有些方法带参数,有些不带参数,方法的使用都很容易,在Xcode下编程时会自动匹配: 1??创建字符串: 1 string:创建一个空字符串 2 stringWithstring

【非凡程序员】 OC第五节课 (数据类型NSString和NSString)

//  main.m//  ZiFuChuan////  Created by 非凡程序员 on 15/5/18.//  Copyright (c) 2015年 非凡程序员. All rights reserved.// #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {    @autoreleasepool { NSString *[email protected]"AB"

ios Enum Value To NSString

#define enumToString(value)  @#value eg. typedef NS_ENUM(NSInteger, Sex) { Male = 0, Famale = 1, }; NSString * string =  enumToString(Male); [email protected](@"string=%@", string); string=Male;

继续NSString的学习

一.大小写转换1.- (NSString *)uppercaseString; 所有字符转化为大写2.- (NSString *)lowercaseString; 所有字符转化为小写3.- (NSString *)capitalizedString; 所有单词首字母转化大写 NSLog(@"%@", [demoTwo uppercaseString]);NSLog(@"%@", [demoTwo lowercaseString]);NSLog(@"%@&q

IOS中NSString的常见用法

iOS NSString的常用用法 //1.创建常量字符串. NSString *astring = @"This is a String!"; //2.创建空字符串,给予赋值. NSString *astring = [[NSString alloc] init]; astring = @"This is a String!"; //3.在以上方法中,提升速度:initWithString方法 NSString *astring = [[NSString allo

iOS解决NSData转NSString后字符为空

iOS中,将NSData转NSString的一般方法为[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];但是当data中包含00时,所获得的新字符就会为nil,这时我们应该这样转 [NSString stringWithUTF8String:[data bytes]];