NSFileManager文件管理
URL : 统一资源定位符(Uniform Resource Locator)
在互联网上可以唯一的定位一个资源(文件,音乐,图片..)
http://www.tarena.com.cn/index.html
在计算中也可以使用URL来定位一个资源
}else{
NSLog(@"文件创建失败!");
NSString *contents = @"我是要保存到文件中去的内容,哈哈";
//NSString ==> NSData
NSData *data = [contents dataUsingEncoding:NSUTF8StringEncoding];
//创建并写入内容
NSData *data2 = [manager contentsAtPath:@"/Users/tarena/Desktop/my3.txt"];
//NSData ==> NSString
NSString *contents2 = [[NSString alloc]initWithData:data2 encoding:NSUTF8StringEncoding];
NSLog(@"从文件中读到的内容是:%@", contents2);
//从文件中读取字符串内容的简洁方法
NSString *contents3 = [NSString stringWithContentsOfFile:@"/Users/tarena/Desktop/my3.txt" encoding:NSUTF8StringEncoding error:nil];
error = nil;
res = [manager removeItemAtPath:@"/Users/tarena/Desktop/my.txt" error:&error];
if(!res){
NSLog(@"删除失败:%@", error.userInfo);
}
NSString *path = @"/Users/tarena/Desktop/files";
NSString *sourcePath = @"/Users/tarena/Desktop/app.txt";
NSString *targetPath = @"/Users/tarena/Desktop/app2.txt";
if(![manager copyItemAtPath:sourcePath toPath:targetPath error:nil]){
NSLog(@"拷贝失败!");
NSURL *url = [NSURL URLWithString:@"file:///Users/tarena/Desktop/urldir"];
if (![manager createDirectoryAtURL:url withIntermediateDirectories:YES attributes:nil error:nil]){
NSLog(@"使用URL创建目录失败!");
}
//使用path来将一个文件的二进制数据读入到NSData(假设这个文件是图片,或视频等,就不能读成字符串)
NSData *data = [NSData dataWithContentsOfFile:@"/Users/tarena/Desktop/app.txt"];
NSString *str = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", str);
//使用URL将一个文件的二进制数据读入内存中(使用NSData对象来封装)
NSDictionary *dic=[[NSFileManager defaultManager]attributesOfItemAtPath:path error:nil];
NSLog(@"%@",[dic description]);//输出文件的属性内容
NSUInteger fileSize=[dic[NSFileSize]integerValue];//文件大小是以为字节单位
NSFileManager文件管理的更多相关文章
- iOS - OC NSFileManager 文件管理
前言 @interface NSFileManager : NSObject @interface NSFileHandle : NSObject <NSSecureCoding> NSF ...
- Objective-C NSFileManager 文件管理总结
createFileAtPath //创建文件 NSFileManager *fm = [NSFileManager defaultManager]; NSString *strpath = [NSS ...
- 归档NSKeyedArchiver解归档NSKeyedUnarchiver与文件管理类NSFileManager (文件操作)
========================== 文件操作 ========================== 一.归档NSKeyedArchiver 1.第一种方式:存储一种数据. // 归档 ...
- Swift\本地文件管理
转载自:http://www.coloroud.com/2015/06/01/Swift-File-Manager/ 开头 看来Swift这趟浑水是非干不可,既然如此,那索性就来的彻底吧,来一次全方位 ...
- iOS开发中常用的单例
定义:一个类的对象,无论在何时创建.无论创建多少次,创建出来的对象都是同一个对象. 使用场景:当有一些数据需要共享给别的类的时候,就可以把这些数据保存在单例对象中. 关键代码: + (instan ...
- 浅谈iOS中的单例模式
iOS中的单例模式 就我本身理解而言,我认为的单例:单例在整个工程中,就相当于一个全局变量,就是不论在哪里需要用到这个类的实例变量,都可以通过单例方法来取得,而且一旦你创建了一个单例类,不论你 ...
- UI基础:DataPersistent.沙盒
沙盒是系统为每一个应用程序生成的一个特定文件夹,文件夹的名字由一个十六进制数据组成,每一个应用程序的沙盒文件名都是不一样的,是由系统随机生成的. 沙盒主目录: NSString *homePath = ...
- IOS开发-视频,音频,录音简单总结
/***** * 1. 视频播放 * * @格式:mp4 mov m4v m2v 3gp 3g2 * * @系统框架使用:#import <MediaPlayer/MediaPlayer.h ...
- OC 知识点回顾
/* 字符串: NSString 不可变字符串 字符串对象的内容不能修改,字符串的指针可以改变 NSMutableString 可变字符串 可以修改字符串对象的内容,继承自NSString , ...
随机推荐
- [算法] 插入排序 Insertion Sort
插入排序(Insertion Sort)是一种简单直观的排序算法.它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入.插入排序在实现上,通常采用in-pla ...
- linux 下的进程管理工具 supervisor
在linux下监控进程: 1)yum install python-setuptools linux下的python安装工具 2)easy_install supervisor 安装sup ...
- Bmob第三方登录详解
Bmob第三方登录详解 Bmob 第三方登录 简介 本文主要介绍新浪微博,QQ,微信的登录接入以及如何配合BmobSDK中的第三方登录功能实现第三方登录. 在使用之前请先按照快速入门创建好可以调用Bm ...
- 【转】Nginx系列(三)--管理进程、多工作进程设计
原博文出于:http://blog.csdn.net/liutengteng130/article/details/46700999 感谢! Nginx由一个master进程和多个worker进程组 ...
- Struts2的输入验证
一.概述: ① Struts2的输入验证 –基于 XWorkValidation Framework的声明式验证:Struts2提供了一些基于 XWork Validation Framework的内 ...
- HDU 5763 Another Meaning (kmp + dp)
Another Meaning 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5763 Description As is known to all, ...
- 应用反射写的tostring方法
应用反射写的tostring方法 应用反射写的tostring方法,方便以后查询 代码 package com.chzhao.reflecttest; import java.lang.reflect ...
- BPL插件框架的二种实现
1)非RTTI方式适用于所有的DELPHI版本 unit untMain; interface uses Windows, Messages, SysUtils, Classes, Graphics, ...
- 转载Repository 和Unit of work的使用说明
利用Repository and Unit of Work重构项目 文章索引和简介 项目最基础的东西已经结束了,但是现在我们的项目还不健全 不利于测试 重复性代码多 层与层之间耦合性高 不利于 ...
- JVM 关闭前执行命令的钩子
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() { public void run() { System.out.prin ...