ios 常用字符串的操作.docx
《ios 常用字符串的操作.docx》由会员分享,可在线阅读,更多相关《ios 常用字符串的操作.docx(25页珍藏版)》请在冰豆网上搜索。
ios常用字符串的操作
ios常用字符串的操作
//将NSData转化为NSString
NSString*str=[[NSStringalloc]initWithData:
responseencoding:
NSUTF8StringEncoding];
//将NSString转化为NSData
(NSString.h)
-(NSData*)dataUsingEncoding:
(NSStringEncoding)encoding;
//载一个字符串中删除一个字符或字符串
[_displaydeleteCharactersInRange:
NSMakeRange(index_of_char_to_remove,1)];
数学转换为字符串
NSString*returnStr;
returnStr=[[NSNumbernumberWithInt:
row]stringValue];
NSString
*******************************************************************************************/
//一、NSString
/*----------------创建字符串的方法----------------*/
//1、创建常量字符串。
NSString*astring=@"ThisisaString!
";
//2、创建空字符串,给予赋值。
NSString*astring=[[NSStringalloc]init];
astring=@"ThisisaString!
";
[astringrelease];
NSLog(@"astring:
%@",astring);
//3、在以上方法中,提升速度:
initWithString方法
NSString*astring=[[NSStringalloc]initWithString:
@"ThisisaString!
"];
NSLog(@"astring:
%@",astring);
[astringrelease];
//4、用标准c创建字符串:
initWithCString方法
char*Cstring="ThisisaString!
";
NSString*astring=[[NSStringalloc]initWithCString:
Cstring];
NSLog(@"astring:
%@",astring);
[astringrelease];
//5、创建格式化字符串:
占位符(由一个%加一个字符组成)
inti=1;
intj=2;
NSString*astring=[[NSStringalloc]initWithString:
[NSStringstringWithFormat:
@"%d.Thisis%istring!
",i,j]];
NSLog(@"astring:
%@",astring);
[astringrelease];
//6、创建临时字符串
NSString*astring;
astring=[NSStringstringWithCString:
"Thisisatemporarystring"];
NSLog(@"astring:
%@",astring);
/*----------------从文件读取字符串:
initWithContentsOfFile方法----------------*/
NSString*path=@"astring.text";
NSString*astring=[[NSStringalloc]initWithContentsOfFile:
path];
NSLog(@"astring:
%@",astring);
[astringrelease];
/*----------------写字符串到文件:
writeToFile方法----------------*/
NSString*astring=[[NSStringalloc]initWithString:
@"ThisisaString!
"];
NSLog(@"astring:
%@",astring);
NSString*path=@"astring.text";
[astringwriteToFile:
pathatomically:
YES];
[astringrelease];
/*----------------比较两个字符串----------------*/
//用C比较:
strcmp函数
charstring1[]="string!
";
charstring2[]="string!
";
if(strcmp(string1,string2)==0)
{
NSLog(@"1");
}
//isEqualToString方法
NSString*astring01=@"ThisisaString!
";
NSString*astring02=@"ThisisaString!
";
BOOLresult=[astring01isEqualToString:
astring02];
NSLog(@"result:
%d",result);
//compare方法(comparer返回的三种值)
NSString*astring01=@"ThisisaString!
";
NSString*astring02=@"ThisisaString!
";
BOOLresult=[astring01compare:
astring02]==NSOrderedSame;
NSLog(@"result:
%d",result);
//NSOrderedSame判断两者内容是否相同
NSString*astring01=@"ThisisaString!
";
NSString*astring02=@"thisisaString!
";
BOOLresult=[astring01compare:
astring02]==NSOrderedAscending;
NSLog(@"result:
%d",result);
//NSOrderedAscending判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)
NSString*astring01=@"thisisaString!
";
NSString*astring02=@"ThisisaString!
";
BOOLresult=[astring01compare:
astring02]==NSOrderedDescending;
NSLog(@"result:
%d",result);
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//不考虑大小写比较字符串1
NSString*astring01=@"thisisaString!
";
NSString*astring02=@"ThisisaString!
";
BOOLresult=[astring01caseInsensitiveCompare:
astring02]==NSOrderedSame;
NSLog(@"result:
%d",result);
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//不考虑大小写比较字符串2
NSString*astring01=@"thisisaString!
";
NSString*astring02=@"ThisisaString!
";
BOOLresult=[astring01compare:
astring02
options:
NSCaseInsensitiveSearch|NSNumericSearch]==NSOrderedSame;
NSLog(@"result:
%d",result);
//NSCaseInsensitiveSearch:
不区分大小写比较NSLiteralSearch:
进行完全比较,区分大小写NSNumericSearch:
比较字符串的字符个数,而不是字符值。
/*----------------改变字符串的大小写----------------*/
NSString*string1=@"AString";
NSString*string2=@"String";
NSLog(@"string1:
%@",[string1uppercaseString]);//大写
NSLog(@"string2:
%@",[string2lowercaseString]);//小写
NSLog(@"string2:
%@",[string2capitalizedString]);//首字母大小
/*----------------在串中搜索子串----------------*/
NSString*string1=@"Thisisastring";
NSString*string2=@"string";
NSRangerange=[string1rangeOfString:
string2];
intlocation=range.location;
intleight=range.length;
NSString*astring=[[NSStringalloc]initWithString:
[NSStringstringWithFormat:
@"Location:
%i,Leight:
%i",location,leight]];
NSLog(@"astring:
%@",astring);
[astringrelease];
/*----------------抽取子串----------------*/
//-substringToIndex:
从字符串的开头一直截取到指定的位置,但不包括该位置的字符
NSString*string1=@"Thisisastring";
NSString*string2=[string1substringToIndex:
3];
NSLog(@"string2:
%@",string2);
//-substringFromIndex:
以指定位置开始(包括指定位置的字符),并包括之后的全部字符
NSString*string1=@"Thisisastring";
NSString*string2=[string1substringFromIndex:
3];
NSLog(@"string2:
%@",string2);
//-substringWithRange:
//按照所给出的位置,长度,任意地从字符串中截取子串
NSString*string1=@"Thisisastring";
NSString*string2=[string1substringWithRange:
NSMakeRange(0,4)];
NSLog(@"string2:
%@",string2);
//扩展路径
NSString*Path=@"~/NSData.txt";
NSString*absolutePath=[PathstringByExpandingTildeInPath];
NSLog(@"absolutePath:
%@",absolutePath);
NSLog(@"Path:
%@",[absolutePathstringByAbbreviatingWithTildeInPath]);
//文件扩展名
NSString*Path=@"~/NSData.txt";
NSLog(@"Extension:
%@",[PathpathExtension]);
/*******************************************************************************************
NSMutableString
*******************************************************************************************/
/*---------------给字符串分配容量----------------*/
//stringWithCapacity:
NSMutableString*String;
String=[NSMutableStringstringWithCapacity:
40];
/*---------------在已有字符串后面添加字符----------------*/
//appendString:
andappendFormat:
NSMutableString*String1=[[NSMutableStringalloc]initWithString:
@"ThisisaNSMutableString"];
//[String1appendString:
@",Iwillbeaddingsomecharacter"];
[String1appendFormat:
[NSStringstringWithFormat:
@",Iwillbeaddingsomecharacter"]];
NSLog(@"String1:
%@",String1);
*/
/*--------在已有字符串中按照所给出范围和长度删除字符------*/
/*
//deleteCharactersInRange:
NSMutableString*String1=[[NSMutableStringalloc]initWithString:
@"ThisisaNSMutableString"];
[String1deleteCharactersInRange:
NSMakeRange(0,5)];
NSLog(@"String1:
%@",String1);
/*--------在已有字符串后面在所指定的位置中插入给出的字符串------*/
//-insertString:
atIndex:
NSMutableString*String1=[[NSMutableStringalloc]initWithString:
@"ThisisaNSMutableString"];
[String1insertString:
@"Hi!
"atIndex:
0];
NSLog(@"String1:
%@",String1);
/*--------将已有的空符串换成其它的字符串------*/
//-setString:
NSMutableString*String1=[[NSMutableStringalloc]initWithString:
@"ThisisaNSMutableString"];
[String1setString:
@"HelloWord!
"];
NSLog(@"String1:
%@",String1);
/*--------按照所给出的范围,和字符串替换的原有的字符------*/
//-setString:
NSMutableString*String1=[[NSMutableStringalloc]initWithString:
@"ThisisaNSMutableString"];
[String1replaceCharactersInRange:
NSMakeRange(0,4)withString:
@"That"];
NSLog(@"String1:
%@",String1);
/*-------------判断字符串内是否还包含别的字符串(前缀,后缀)-------------*/
//01:
检查字符串是否以另一个字符串开头-(BOOL)hasPrefix:
(NSString*)aString;
NSString*String1=@"NSStringInformation.txt";
[String1hasPrefix:
@"NSString"]==1?
NSLog(@"YES"):
NSLog(@"NO");
[String1hasSuffix:
@".txt"]==1?
NSLog(@"YES"):
NSLog(@"NO");
//02:
查找字符串某处是否包含其它字符串-(NSRange)rangeOfString:
(NSString*)aString,这一点前面在串中搜索子串用到过;
/*******************************************************************************************
NSArray
*******************************************************************************************/
/*---------------------------创建数组------------------------------*/
//NSArray*array=[[NSArrayalloc]initWithObjects:
@"One",@"Two",@"Three",@"Four",nil];
self.dataArray=array;
[arrayrelease];
//-(unsigned)Count;数组所包含对象个数;
NSLog(@"self.dataArraycound:
%d",[self.dataArraycount]);