我也是纠结了好几天,我想自己想个办法,但是数据复制不上去,我现在还不明白,如果有人知道我错在哪了,请留言,如果还有更好的方法,请分享共同进步。

________________________________________用输入流进行文件的复制

//这是我原图片的路径

NSString *Path=[NSHomeDirectory() stringByAppendingPathComponent:@"2238-110H514215143.jpg"];

NSError *error;

//这是我想要复制图片的路径

NSString *Path1=[NSHomeDirectory() stringByAppendingPathComponent:@"Movies/2238-110H514215143oooo.jpg"];

NSLog(@"%@",Path1);

//创建一个文件对象

NSFileManager *fileManager=[NSFileManager defaultManager];

//创建一个空的准备写入数据的文件

BOOL success=[fileManager createFileAtPath:Path1 contents:nil attributes:nil];

if (success) {

NSLog(@"复制文件成功");

}

//获取复制文件的属性全部

NSDictionary *dictionary=[fileManager attributesOfItemAtPath:Path error:&error];

//获取文件的大小

NSNumber *number=[dictionary objectForKey: NSFileSize];

long long a=[number longLongValue];

//为读和写作准备

NSFileHandle *fileHandle=[NSFileHandle fileHandleForReadingAtPath:Path];

NSFileHandle *filehandle=[NSFileHandle fileHandleForWritingAtPath:Path1];

NSMutableData *data1;

//如何实现读取5000字节写入5000字节

//        for (long long l=0; l<=a; ) {

//        for (int i=0; i<=5000;i++) {

//        NSData *data2=[fileHandle readDataOfLength:l];     //这是我想的但是行不通不知是为什么

//        [data1 appendData:data2];

//            l++;

//        }

//         [filehandle writeData:data1];

//        }

while(a) {

NSData *data;

if (a<5000){

//如果文件小于5000字节是直接复制

data=[fileHandle readDataToEndOfFile];

[filehandle writeData:data];

}else{

//这是从头到尾读取5000字节

data=[fileHandle readDataOfLength:5000];

[filehandle writeData:data];

//a减是从头减5000字节正好是剩下的当a为0时正好是否

a-=5000;

}

}

[fileHandle closeFile];

[filehandle closeFile];

return 0;

}

}

最新文章

  1. 用最简单的方式在C#中使用多线程加速耗时的图像处理算法的执行(多核机器)。
  2. BZOJ 1014: [JSOI2008]火星人prefix [splay 二分+hash] 【未完】
  3. 记一次PHP7+opcache+zmq出现SIGSEGV 问题的查找(一次不成功的bug查找)
  4. TV测试中的按键长按操作模拟
  5. Java多态性理解
  6. SQLServer使用表值参数,高性能批量插入数据
  7. Thinkpad 小紅點設定
  8. hdu 5475 An easy problem(暴力 || 线段树区间单点更新)
  9. Java设计模式之--代理模式学习
  10. SVN对unity3d项目版本进行管理的不方便问题,研究ing
  11. WIN7+Ubuntu双系统,win7启动不了
  12. 静态Web开发 JavaScript
  13. POJ 1159 Palindrome(LCS)
  14. Entity Framework with MySQL 学习笔记一(查询)
  15. Java阅读word程序说明文件
  16. jmeter连接配置带跳板机(SSH)的mysql服务器
  17. 关于IE,Chrome,Firefox浏览器的字符串拼接问题
  18. islider结合react的简单实用
  19. 大数据Hadoop学习之搭建hadoop平台(2.2)
  20. eclipse中Maven项目pom.xml报错:com.thoughtworks.xstream.io.HierarchicalStreamDriver

热门文章

  1. VS2012+EF6+Mysql配置心路历程
  2. 《简明python教程》笔记一
  3. 使用Java练习算法常用的基本操作
  4. 响应性web设计实战总结(二)
  5. hdu 4007 暴力or线段树 ***
  6. css3弹性盒子模型
  7. OAF_MDS系列2_OAF页面的通过MDS多语言开发国际化(案例)
  8. WC2016游记
  9. js解析XML
  10. (原创)android4.4沉浸式标题栏
  11. Haskell 几乎无疼痛入门指南
  12. Linux下mysql远程连接问题
  13. 一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十一)
  14. pyenv安装及常用命令
  15. sqlalchemy的数据库ORM操作(表之间的关系)
  16. SqlServer :实现树形结构递归查询(无限极分类)
  17. python:HTMLTestRunner测试报告优化
  18. 第2章 线性表《C#数据结构和算法》
  19. 转:Scanner中nextLine()方法和next()方法的区别
  20. Spring Bean的生命周期例子