//可以将大的数据分割为指定大小的小数据块,方便传输用~
#define A_RECEIVE 2500000
NSData *videoData = [NSData dataWithContentsOfURL:[NSURL fileURLWithPath:theImagePath]];
NSLog(@"视频文件的大小为:%d",videoData.length);
NSMutableArray *videoDataArray = [[NSMutableArray alloc] init];
//159600
int lastIValue = 0;
for (int i = 0; i<= [videoData length]-A_RECEIVE; i+=A_RECEIVE)
{
lastIValue = i+A_RECEIVE;
NSString *rangeStr = [NSString stringWithFormat:@"%i,%i",i,A_RECEIVE];
NSLog(@"HHHHHHHHH :%@",rangeStr);
NSData *subData = [videoData subdataWithRange:NSRangeFromString(rangeStr)];
[videoDataArray addObject:subData];
}
NSString *rangeStr = [NSString stringWithFormat:@"%i,%i",lastIValue,[videoData length]%A_RECEIVE];
NSLog(@"MMMMMMM :%@",rangeStr);
NSData *subData = [videoData subdataWithRange:NSRangeFromString(rangeStr)];
[videoDataArray addObject:subData];
原文地址:http://www.devdiv.com/blog-215400-52780.html