课堂笔记11
来源:互联网 发布:常州市软件行业协会 编辑:程序博客网 时间:2024/06/10 01:21
NSData / NSMutableData
1、计算机中文件分为哪几种?
文本文件和二进制文件。其中我们的图片、歌曲、电影等都是二进制文件,像 .txt 的文件就是文本文件。
2、客户端与服务器端或者客户端与客户端数据交流的格式为二进制(字节流),那么对于传输给客户端的数据,在我们 OC 中用 ‘NSData’ 类来存储。对 NSData 来书,由其实例化的对象中包含大量的字节,这些字节就是我们客户端想要的信息。
//将字符串转换成 NSData
//将C语言的字符串转换成data NSString *string = @"你好吗?"; const char *str = [string UTF8String]; NSData *data1 = [NSData dataWithBytes:str length:strlen(str)]; NSLog(@"data1 = %@",data1);
//直接将OC中的字符串转换成data
NSData *data2 = [string dataUsingEncoding:4];NSLog(@"data2 = %@",data2);
//将本地文件中的数据转换成data
NSData *data3 = [NSData dataWithContentsOfFile:@"/Users/5002/Desktop/1.jpg"];NSLog(@"data3 = %@",data3);
//将网络文件中的数据转换成data
NSData *data4 = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://img0.bdstatic.com/img/image/imglogo-r.png"]];NSLog(@"data4 = %@",data4);
//求data的字节数
NSUInteger length = data4.length;NSLog(@"length = %ld",length);
//NSMutableData
//创建一个空的可变data NSMutableData *mdata = [NSMutableData data];//增加data [mdata appendData:data1];
OC 中的时间类 NSDate (无可变类)
在 OC 中 Foundation 框架为我们提供了强大时间操作类 ‘NSData’,该类封装了各种处理时间和日期的API
1、构造一个时间 ‘NSDate’ 类
//获取系统当前时间 NSDate *date1 = [NSDate date]; NSLog(@"date1 = %@",date1);//当前系统时间 + 100秒 NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:100]; NSLog(@"date2 = %@",date2);//1970年1月1日0分0秒 + 100秒 NSDate *date3=[NSDate dateWithTimeIntervalSince1970:100]; NSLog(@"date3 = %@",date3);// NSDate *date4 = [NSDate dateWithTimeInterval:100 sinceDate:[NSDate date]]; NSLog(@"date4 = %@",date4);
2、关于 ‘时间戳’
//将一个日期转换成时间戳,此时间戳是已1970年为标准 NSTimeInterval timeInterval = [[NSDate date] timeIntervalSince1970]; NSLog(@"timeInterval = %f",timeInterval);//此时间戳是以现在时间为标准 NSTimeInterval timeInterval1 = [[NSDate date] timeIntervalSinceNow]; NSLog(@"timeInterval1 = %f ",timeInterval1);
3、将时间戳装换为字符串
//将时间转换成字符串 NSDateFormatter *dateFormatter = [NSDateFormatter new];
//设置时区(默认时区) dateFormatter.timeZone = [NSTimeZone defaultTimeZone];
//设置时间输出格式 [dateFormatter setDateFormat:@"yyyy-MM-dd HH-mm-ss ms"]; NSString *dateString = [dateFormatter stringFromDate:[NSDate date]]; NSLog(@"dateString = %@",dateString);
//将时间的类型的字符串转换成日期 [dateFormatter setDateFormat:@"yyyy-MM-dd HH-mm-ss"]; NSDate *date = [dateFormatter dateFromString:@"2015-07-31 16-03-24"]; NSLog(@"date = %@",date); NSTimeInterval timeinterval = date.timeIntervalSinceNow; NSLog(@"距今现在已经%f",timeinterval); int s = -timeinterval; NSLog(@"%d秒前",s ); int m = -timeinterval / 60; NSLog(@"%d分钟前",m);
0 0
- 11-12课堂笔记
- 11-13课堂笔记
- 课堂笔记11
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记
- 课堂笔记!
- 课堂笔记
- 浅谈优化程序性能(下)
- Ubuntu15.04中FTP-vsftp配置
- Linux学习笔记05之IO重定向
- 杭电 1969 Pie 二分法 附翻译 解题思路
- 浅谈优化程序性能(上)
- 课堂笔记11
- Wrong number of segments in token:
- android知识图谱
- 【算法】将正整数表示为平方数之和
- 7.1线程2015/8/2
- 生产者消费者模式
- ios block回调实现方法
- 我和程序员打了13年交道后,为什么做了缘创派?
- 算法速成(7)图操作