OC学习篇之---文件的操作

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

前一篇文章中我们讲到了OC中的归档和解档操作:http://blog.csdn.net/jiangwei0910410003/article/details/41872551,今天我们来介绍OC中文件操作,在之前的文章中,已经接触到了文件的创建了,但是那不是很具体和详细,这篇文章我们就来仔细看一下OC中是如何操作文件的:


第一、首先来看一下本身NSString类给我们提供了哪些可以操作文件路径名的方法

////  main.m//  37_FilePathHandle////  Created by jiangwei on 14-10-13.//  Copyright (c) 2014年 jiangwei. All rights reserved.//#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    @autoreleasepool {                //演示路径        NSString *path = @"/Users/jiangwei/file.text";                //1.返回路径的组成部分        NSArray *array = [path pathComponents];        NSLog(@"%@",array);                //2.返回路径最后组成部分        NSString *str = [path lastPathComponent];        NSLog(@"%@",str);                //3.在原有的路径后面追加子目录        //这种方式有一点不好,就是需要添加/        [path stringByAppendingString:@"/appFile.text"];        //不需要添加/        [path stringByAppendingPathComponent:@"appFile.text"];                //4.删除最后的组成部分        str = [path stringByDeletingLastPathComponent];        //删除扩展名(.text被删除了)        str = [path stringByDeletingPathExtension];                //5.获取扩展名        str = [path pathExtension];                //6.添加扩展名        [path stringByAppendingPathExtension:@".jpg"];            }    return 0;}
在Java中,我们知道,当我们去操作一个文件的时候,最开始的时候肯定要去构建一个路径,这个路径一般都是String类型的,我们需要定义不同的路径和文件名,OC中也不例外,不过OC中的NSString类在这方面做的可能会更好,下面依次来看一下他的方法:

1、将路径进行分割

//演示路径NSString *path = @"/Users/jiangwei/file.text";//1.返回路径的组成部分NSArray *array = [path pathComponents];NSLog(@"%@",array);
运行结果:


返回的一个数组,将路径分割了,但是需要注意的是,第一个是"/",这个也算是路径的一部分。


2、返回路径的最后组成部分

//2.返回路径最后组成部分NSString *str = [path lastPathComponent];NSLog(@"%@",str);
运行结果:


这个直接返回路径的最后一部分,这个如果放在Java中,我们可能需要用到String类的字符串分割技术了,没有这里的方便


3、添加子目录/子文件

//3.在原有的路径后面追加子目录//这种方式有一点不好,就是需要添加///演示路径str = [path stringByAppendingString:@"/appFile.text"];NSLog(@"%@",str);//不需要添加/str = [path stringByAppendingPathComponent:@"appFile.text"];NSLog(@"%@",str);
这里其实有两种方式可以添加,第一种是直接使用拼接字符串的方式,但是需要手动的添加"/",第二种方式是NSString提供的,不需要手动的添加"/"

运行结果:



4、删除最后面的部分和后缀名

//4.删除最后的组成部分str = [path stringByDeletingLastPathComponent];NSLog(@"%@",str);//删除扩展名(.text被删除了)str = [path stringByDeletingPathExtension];NSLog(@"%@",str);
运行结果:

猜你喜欢

转载自blog.csdn.net/hgfujffg/article/details/84000893