可以通过改变当前文件的偏移量来实现文件的读取

-offsetInFile获取文件当前的位移量
-seekToFileOffset:(NSUInteger)length设置文件当前的位移量
-readDataOfLength:(NSUInteger)length随机读取文件内容的字节数
-seekToEndOfFile将文件跳到结尾
 1 //
 2 //  main.m
 3 //  04-NSFileHandle随机读取
 4 //
 5 //  Created by ma c on 15/8/24.
 6 //  Copyright (c) 2015年. All rights reserved.
 7 //
 8
 9 #import <Foundation/Foundation.h>
10
11 int main(int argc, const char * argv[])
12 {
13     @autoreleasepool
14     {
15         //创建文件
16         NSString *str = @"this is a test\nhello world\nHow are you?";
17         NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
18
19         NSFileManager *fm = [NSFileManager defaultManager];
20
21         if(![fm createFileAtPath:@"1.txt" contents:data attributes:nil])
22         {
23             NSLog(@"创建文件失败");
24             return -1;
25         }
26
27         //随机读取文件
28         NSFileHandle *in = [NSFileHandle fileHandleForReadingAtPath:@"1.txt"];
29         if(in)
30         {
31             //读取部分内容
32             NSData *content = [in readDataOfLength:5];
33             NSLog(@"%@",[[NSString alloc]initWithData:content encoding:NSUTF8StringEncoding]);
34
35             //查看当前文件偏移量
36             NSUInteger offset = [in offsetInFile];
37             NSLog(@"offset:%lu",offset);
38
39             //设置文件偏移
40             [in seekToFileOffset:10];
41
42             //再读10个字节
43             content = [in readDataOfLength:10];
44             NSLog(@"%@",[[NSString alloc]initWithData:content encoding:NSUTF8StringEncoding]);
45
46             //直接跳到文件尾
47             [in seekToEndOfFile];
48
49             //截取文件或者扩展文件(超出了文件长度)
50             //[in truncateFileAtOffset:10];
51         }
52         [in closeFile];
53     }
54     return 0;
55 }

转载于:https://www.cnblogs.com/XYQ-208910/p/4755923.html

Objective-C:随机的读取文件中的内容相关推荐

  1. 使用php读取文件中的内容,以表格的形式进行输出。

    使用php读取文件中的内容,以表格的形式进行输出. 读取文件中的内容,以表格的形式输出内容,地址以小写及链接的形式进行显示. file_get_contents (文件名):读取文件中的内容 expl ...

  2. Java基础,读取文件中的内容写入到另外一个文件。

    有两种方法,首先: 第一种方法:一次性全部读取所有文件内容(这里Arrays.sort(b)代表对字节进行排序,如果不需要进行删除即可) import java.io.FileInputStream; ...

  3. CFileDialog、CStdioFile读取文件中的内容,每行按空格依次读入

    CFileDialog.CStdioFile读取文件中的内容,每行按空格依次读入 注: 1.该文件为固定为3列的小数txt文件,且数字之间以空格隔开 2.CFileDialog 与 CStdioFil ...

  4. 用流读取文件中的内容

    File file = new File("D:\\test.txt");//定义一个file对象,用来初始化FileReader FileReader reader = new ...

  5. python读取文件中的内容_python 读取文件夹中的文件内容

    看thinking in java的时候发现有个题的答案不确定结果, 于是下载答案看下,结果是 这个样子的,这样要怎么才能找到相对应的答案?于是我就着手写了一个快速遍历的脚本(我这里只是单纯的找了出来 ...

  6. python读取文件中的内容并输出_Python从文件中读取字符串并进行解析

    Python是一门简单易学的编程语言,也是目前相当流行的一门编程语言,它在各种场景都有着不错的表现咱们今天就来谈谈Python常见的几种字符串处理方式. 首先,使用的测试数据为ip.txt,文件内容为 ...

  7. python读取数据文件夹_使用python依次读取文件中的所有csv格式的数据

    使用python依次读取文件中的所有csv格式的数据: #coding=gbk import pandas as pd import os path = r'D:\ml_datasets\PHM\c6 ...

  8. python文件读取方法read(size)的含义是_在Python中可使用read([size])来读取文件中的数据,如果参数size省略,则读取文件中的()。...

    [单选题]李明在他所属的公司工作五年,每天都很认真地处理繁杂的事情,同事们都夸他认真,但是依然没有建树,这是因为: [多选题]品牌标志的作用表现在 [单选题]新产品开发的第一个阶段是_______. ...

  9. python读出文件中的内容_Python读取文本内容

    综述 在Python中,读文件主要分为三个步骤: 打开文件 . 读取内容 . 关闭文件 .一般形式如下: try: file = open('/path/to/file', 'r') # 打开文件 d ...

最新文章

  1. WinCE 7 Mouse HOOK
  2. 早停 tf.keras.callbacks.EarlyStopping() 详解【TensorFlow2入门手册】
  3. mybatis 动态 SQL
  4. C语音和易语言实现内存补丁
  5. JNI学习积累之二 ---- 数据类型映射、域描述符说明
  6. 实现数据库的增删改查
  7. ssh整合之一spring的单独运行环境
  8. 但愿Fedora 10有Ubuntu Wubi安置遵命
  9. 功能测试常用6种方法_云端功能测试:更好的12种方法
  10. poj 2513 欧拉回路+并查集推断是否联通+Trie树
  11. 什么是Servlet?对Servlet技术的浅尝解析
  12. 2022-2028全球气动测试探针行业调研及趋势分析报告
  13. Xcode Warning: “no rule to process file
  14. 计算机组成:真正理解“乘法器”和“除法器”
  15. 笔记本连接显示器没有声音解决方法
  16. 学计算机U盘内存,用U盘启动盘快速检测电脑内存的详细教程
  17. 宽度优先搜索算法-BreadthFirstSearch(BFS)
  18. WannaCry弱爆了!韩国IDC被Erebus软件勒索683万
  19. html5英文参考文献,外文参考文献引用常识介绍
  20. 不是有效的win32应用程序_什么是模块,各种模块的有效行为(1)

热门文章

  1. webchart= php 解码,Web Pages - Chart 帮助器
  2. pyqt5入门教程(三)
  3. django--模板继承、组件、自定义标签
  4. 并发编程--线程池与进程池
  5. Pipenv和Python虚拟环境
  6. python第五十一课——__slots
  7. P2339 提交作业usaco
  8. swoole使用 常用案例
  9. hdoj1176【DP】
  10. SmartImageView框架的使用