IOS开发--基本类型转换

本文介绍了在iOS开发中如何进行基本类型的转换,包括从NSURL到NSString的转换,以及从NSString到NSData的转换,详细阐述了利用`stringByReplacingPercentEscapesUsingEncoding:`和`dataUsingEncoding:`方法实现字符串和数据之间的互换。
摘要由CSDN通过智能技术生成
数据类型转换
    int i;
    NSString *str;
    float f;
    char *c;
    NSArray *arr;

    i = [str intValue];    //    NSString——>int
    str = [NSString stringWithFormat:@"%i",i];    //    int ——>NSString
    f = [str floatValue];    //    NSString——>float
    str =[NSString stringWithFormat:@"%f",f];    //    float——>NSString
    str = [NSString stringWithCString:c encoding:NSUTF8StringEncoding];   
//    char *——>NSString   
    arr = [NSArray arrayWithObjects:@"hello",@"",@"world", nil];    //   
NSDictionary——>NSString  即 NSArray 元素拼接字符串    最后必须是nil 
    str=[array componentsJoinedByString:@","];
    data = [NSData dataWithBytes:c length:strlen(c)];    //    NSData——>char *
    str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    //    NSData——>NSString
    const char * ch=[str UTF8String];    //    NSString——>char *
    const char * cha=[data bytes];    //    NSData——>char *
    NSURL *url=[NSURL URLWithString:str];     //    NSString——>NSURL

    str=[[url absoluteString]stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];    //   NSURL——>NSString 

    NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];    //    NSString——>NSData    NSString 属性化字符串


    NSString *string = @"Here is some simple text that includes bold and italics.n";
    NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:string];
    //     创建可变属性化字符串                NSUInteger length = [string length];
    UIFont *baseFont = [UIFont systemFontOfSize:10];   
//    设置基本字体           
    [attrString addAttribute:NSFontAttributeName value:baseFont range:NSMakeRange(0, length)];
    UIFont *boldFont = [UIFont boldSystemFontOfSize:5];
    [attrString addAttribute:NSFontAttributeName value:boldFont range:[string rangeOfString:@"bold"]];
    //   用系统字体的粗体来设置粗体,单词"bold"       
    UIColor *color = [UIColor redColor];
    [attrString addAttribute:NSForegroundColorAttributeName value:color range:[string rangeOfString:@"bold"]];
    self.titleLabel.attributedText=attrString;


NSString 字符串的前后空格去掉

    [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];    //    NSString 类型

 
NSString 从文件创建字符串
    NSString *path =[[NSBundle mainBundle]pathForResource:@"1" ofType:nil];    //    路径
    NSString *str=[[NSString alloc]initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

NSString 字符串判断两者内容是否相同以及 值的大小比较
    BOOL b =[str1 compare:str2]== NSOrderedSame// 
NSOrderedSame 判断是否相同相同返回1,不同返回0
    BOOL b =[str1 compare:str2]== NSOrderedAscending ;    //    
NSOrderedAscending按值得大小判断 str1 小于 str2 返回1 否则返回0;
    BOOL b =[str1 compare:str2]==NSOrderedDescending  //    NSOrderedDescending 按值得大小判断 str1 大于 str2 返回1 否则返回0;
    BOOL b=[str1 compare:str2 options:NSCaseInsensitiveSearch]== NSOrderedSame;   //
    NSCaseInsensitiveSearch  不区分大小写的比较
    NSString *str =  [str1 uppercaseString];
    //    将字符串变为 大写
   
NSString *str =  [str2lowercaseString];    //    将字符串变为 小写
   
NSString *str =  [str1 capitalizedString];     //    将字符串的 首字母 变为 大写
    
NSString 查找字符串某处是否包含其它字符串,给出位置以及长度
 
   NSString *str1 = @"This is a string";
    NSString *str2 = @"str";
    NSRange range = [str1 rangeOfString:str2];
    NSUInteger location = range.location;    //    str2在str1中的位置
    NSUInteger leight = range.length;   //    str2的长度
    NSString *str = [NSString stringWithFormat:@"Location:%lu,Leight:%lu",location,leight];
 
NSString 字符串截取(从0开始数的)
    NSString *str1 = @"This is a string";
    NSString *str2 = [str1 substringToIndex:5];   //   
从字符串的开头一直截取到指定的位置,但不包括该位置的字符
    NSString *str3 = [str1 substringFromIndex:5];    //   以指定位置开始(包括指定位置的字符),并包括之后的全部字符
    NSString *str4 = [str1 substringWithRange:NSMakeRange(2, 5)];    //    按照所给出的位置(包括指定位置的字符),长度,任意地从字符串中截取子串

NSString 字符串链接(尾部添加)
    NSMutableString *str1 = [[NSMutableString alloc] initWithString:@"NSMutableString"];    //    NSMutableString 的两种方式
    [str1 appendString:@",222"];
    [str1 appendFormat:@",adding some character"];
   
    NSString *str2=@"qwe";    //    NSString 的直接添加方式
    str2=[NSString stringWithFormat:@"%@asd",str2];     


NSString 字符串替换
    NSMutableString *str = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];   
    [str replaceCharactersInRange:NSMakeRange(0, 4)withString:@"That"];    //    指定位置的替换

NSString 字符串的首尾判断
    NSString *String1 = @"NSStringInformation.txt";
    [String1 hasPrefix:@"NSString"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");    //    判断首部
    [String1 hasSuffix:@"txt"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");    //    判断尾部

产生随机数
    int i=arc4random() ;    //    例: arc4random() %10 加上范围 [0,10)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值