iOS案例:读取指定txt文件,并把文件中的内容输出出来

 

用到的是NSString中的initWithContentsOfFile: encoding方法

//
//  main.m
//  读取指定文件并输出内容
//
//  Created by Apple on 15/11/24.
//  Copyright © 2015年 Apple. All rights reserved.
//

/*
 *读取指定txt文件,并把文件中的内容输出出来,
 */
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

    NSError *error = nil;
    NSMutableString *path = [NSMutableString stringWithCapacity:42];
    NSString *home = [@"~" stringByExpandingTildeInPath];
    [path appendString:home];
    [path appendString:@"/work/temp.txt"];
    //NSString *string = [[NSString alloc] initWithContentsOfFile:@"/Users/apple/work/temp.txt" encoding:NSUTF8StringEncoding error:&error];
    NSString *string = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];

    //如果有报错,则把报错信息输出来
    if (error != nil) {
        NSLog(@"%@",[error localizedDescription]);
    }

    NSLog(@"%@",string);

    return 0;
}
View Code

 

补充多一个例子:

//
//  main.m
//  字符串练习2:读写文件
//
//  Created by Apple on 15/12/7.
//  Copyright © 2015年 Apple. All rights reserved.
//

#import <Foundation/Foundation.h>
void readFile(NSString *path);
void writeToFile(NSString *path, NSString *str);

int main(int argc, const char * argv[]) {

    //读取文件中的内容
    NSString *path1 = @"/Users/apple/Desktop/KeenApps/Object-C/Object-c-Test/字符串练习2:读写文件/1.txt";
    //NSString *path = @"/Users/apple/Desktop/2.txt";

    NSLog(@"读取文件:");
    readFile(path1);

    //写入文件内容
    NSString *path2 = @"/Users/apple/Desktop/KeenApps/Object-C/Object-c-Test/字符串练习2:读写文件/2.txt";
    NSLog(@"写入文件");
    NSString *str = @"这是一个测试";
    writeToFile(path2,str);

    NSLog(@"读取文件:");
    readFile(path2);
    return 0;
}

//读取文件
void readFile(NSString *path){
    NSError *error = nil;
    NSString *str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];

    if (error != nil) {
        NSLog([error localizedDescription]);//将错误信息输出来
    }
    else{
        NSLog(@"%@",str);
    }

}

//写入文件
void writeToFile(NSString *path, NSString *str){
    NSError *error = nil;
    //atomically : YES时,没有写完,则会全部撤销;NO时候,没有写完,不会撤销
    //注意:这种写入方式,如果文件补存在,则创建;如果文件存在,则覆盖原文件的内容
    BOOL flag = [str writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];//一般error都设置为nil,保证写入成功
    if (flag) {
        NSLog(@"写入成功");
    }
    else{
        NSLog(@"写入失败");
    }
}
View Code

 

补充:

使用URL方式访问:http://www.cnblogs.com/KeenLeung/p/5028012.html

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值