IPhone之IO操作
来源:互联网 发布:淘宝美国末日ps3 编辑:程序博客网 时间:2024/05/20 19:33
//获取当前应用程序的主目录
NSString directoryPath =NSHomeDirectory();
//获取当前目录下的所有文件
NSArray directoryContents = [[NSFileManager defaultManager] directoryContentsAtPath: directoryPath];
//获取一个文件或文件夹
NSString *selectedFile = (NSString*)[directoryContents objectAtIndex: indexPath.row];
//拼成一个完整路径
[directoryPath stringByAppendingPathCom
BOOL isDir;
//判断是否是为目录
if ([[NSFileManager defaultManager] fileExistsAtPath:selectedPath isDirectory:&isDir] && isDir)
{//目录
}
else
{//文件
}
//日期格式化
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumSty
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
//数字格式化
NSNumberFormatter *numberFormatter =[[NSNumberFormatter alloc] init];
[numberFormatter setPositiveFormat: @"#,##0.## bytes"];
//获取文件属性
NSDictionary *fileAttributes =[[NSFileManager defaultManager] fileAttributesAtPath: directoryPath traverseLink: YES];
//获取文件的创建日期
NSDate *modificationDate = (NSDate*)[fileAttributes objectForKey: NSFileModificationDate];
//获取文件的字节大小
NSNumber *fileSize = (NSNumber*)[fileAttributes objectForKey: NSFileSize];
//格式化文件大小
nsstring A = [numberFormatter stringFromNumber: fileSize];
//格式化文件创建日期
NSstring B =[dateFormatter stringFromDate: modificationDate];
[numberFormatter release];
[dateFormatter release];
//读取文件内容操作
- (void) loadFileContentsIntoText
{
//通过流打开一个文件
NSInputStream *inputStream = [[NSInputStream alloc] initWithFileAtPath: filePath];
[inputStream open];
NSInteger maxLength = 128;
uint8_t readBuffer [maxLength];
//是否已经到结尾标识
BOOL endOfStreamReached = NO;
// NOTE: this tight loop will block until stream ends
while (! endOfStreamReached)
{
NSInteger bytesRead = [inputStream read: readBuffer maxLength:maxLength];
if (bytesRead == 0)
{//文件读取到最后
endOfStreamReached = YES;
}
else if (bytesRead == -1)
{//文件读取错误
endOfStreamReached = YES;
}
else
{
NSString *readBufferString =[[NSString alloc] initWithBytesNoCopy: readBuffer length: bytesRead encoding: NSUTF8StringEncoding freeWhenDone: NO];
//将字符不段的加载到视图
[self appendTextToView: readBufferString];
[readBufferString release];
}
}
[inputStream close];
[inputStream release];
}
异步文件读取
nsstream是可以异步工作的。可以注册一个在流中有字节可读的时候回调的函数,如果没有可读的,就不要阻塞住。
暂略
- IPhone之IO操作
- iphone 的io操作详解
- iPhone之文件操作
- STM32F429之IO操作
- java IO操作之IO流介绍
- Java之IO流操作
- java基础之IO操作
- Java基础之IO操作
- C++IO之文件操作
- Java温故而知新之IO操作
- Java IO 之File操作
- Java IO 之File操作
- JAVA基础之IO操作
- Java之IO操作总结
- Java之IO操作总结
- java基础之IO操作
- io操作之File类
- 大数据之IO操作
- TCP Socket编程 C/C++实现 (Windows Platform SDK)
- python 的包管理器 easy_install
- 侵占营业款流程
- IPhone之播放系统声音
- 斐波那契数列算法分析
- IPhone之IO操作
- C++预处理命令#define宏(macro)展开的若干用法
- 在Java中byte类型数据在运算的问题
- MX233物理存储空间学习
- Android Codec 集成和 video Overlay
- 怎样使用orapwd新建口令文件
- 静态代码块(static block)
- gSOAP简单使用例子
- 贪婪算法之0/1背包问题+读数据结构算法与应用-C++语言描述