Objective-C:随机的读取文件中的内容
可以通过改变当前文件的偏移量来实现文件的读取
-offsetInFile获取文件当前的位移量
-seekToFileOffset:(NSUInteger)length设置文件当前的位移量
-readDataOfLength:(NSUInteger)length随机读取文件内容的字节数
-seekToEndOfFile将文件跳到结尾
//
// main.m
// 04-NSFileHandle随机读取
//
// Created by ma c on 15/8/24.
// Copyright (c) 2015年. All rights reserved.
// #import <Foundation/Foundation.h> int main(int argc, const char * argv[])
{
@autoreleasepool
{
//创建文件
NSString *str = @"this is a test\nhello world\nHow are you?";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; NSFileManager *fm = [NSFileManager defaultManager]; if(![fm createFileAtPath:@"1.txt" contents:data attributes:nil])
{
NSLog(@"创建文件失败");
return -;
} //随机读取文件
NSFileHandle *in = [NSFileHandle fileHandleForReadingAtPath:@"1.txt"];
if(in)
{
//读取部分内容
NSData *content = [in readDataOfLength:];
NSLog(@"%@",[[NSString alloc]initWithData:content encoding:NSUTF8StringEncoding]); //查看当前文件偏移量
NSUInteger offset = [in offsetInFile];
NSLog(@"offset:%lu",offset); //设置文件偏移
[in seekToFileOffset:]; //再读10个字节
content = [in readDataOfLength:];
NSLog(@"%@",[[NSString alloc]initWithData:content encoding:NSUTF8StringEncoding]); //直接跳到文件尾
[in seekToEndOfFile]; //截取文件或者扩展文件(超出了文件长度)
//[in truncateFileAtOffset:10];
}
[in closeFile];
}
return ;
}
Objective-C:随机的读取文件中的内容的更多相关文章
- 在java中读取文件中的内容
package shi; import java.io.*; public class wenjianIO { public static void main(String agrs[]){ File ...
- iOS案例:读取指定txt文件,并把文件中的内容输出出来
用到的是NSString中的initWithContentsOfFile: encoding方法 // // main.m // 读取指定文件并输出内容 // // Created by Apple ...
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- IO流的练习5 —— 读取文件中的字符串,排序后写入另一文件中
需求:已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl” 请编写程序读取数据内容,把数据排序后写入ss.txt中. 分析: A:读取文件中的数据 B:把数 ...
- Flex读取txt文件中的内容(三)
Flex读取txt文件中的内容 1.设计源码 LoadTxt.mxml: <?xml version="1.0" encoding="utf-8"?> ...
- Flex读取txt文件中的内容(二)
Flex读取txt文件中的内容 自动生成的文件 LoadTxt-app.xml: <?xml version="1.0" encoding="utf-8" ...
- Flex读取txt文件中的内容(一)
Flex读取txt文件中的内容 phone.txt: 13000003847 13000003848 13000003849 13000003850 13000003851 13000003852 1 ...
- Flex读取txt文件中的内容报错
Flex读取txt文件中的内容 1.具体错误如下 2.错误原因 读取文件不存在 var file:File = new File(File.applicationDirectory.nativePat ...
- Java将文件中的内容转换为sql语句(和并发定时读取文件)
数据文件内容data.txt {USER_TYPE=1,CREATE_USER=ZHANG,UPDATE_USER=li,OPER_NUM=D001,SRC=2,UPDATE_TIME=2018-11 ...
随机推荐
- JS学习笔记(二)变量、作用域及内存问题
一.基本类型和引用类型的值 变量可能包含两种不同数据类型的值:基本类型值和引用类型值. 基本类型值:简单的数据段. 引用类型值:可能由多个值构成的对象. 当将一个值赋给变量时,解析器必须确定这个值是基 ...
- Python并发编程系列之常用概念剖析:并行 串行 并发 同步 异步 阻塞 非阻塞 进程 线程 协程
1 引言 并发.并行.串行.同步.异步.阻塞.非阻塞.进程.线程.协程是并发编程中的常见概念,相似却也有却不尽相同,令人头痛,这一篇博文中我们来区分一下这些概念. 2 并发与并行 在解释并发与并行之前 ...
- JavaQuery操作对象
1.jQuery操作的分类 <!DOCTYPE html> <html> <head lang="en"> <meta cha ...
- JAVA内存泄漏解决办法
JVM调优工具 Jconsole,jProfile,VisualVM Jconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用.对垃圾回收算法有很详细的跟踪.详细说明参考这里 ...
- 表格插件datatables
具体用法查看官网 https://datatables.net/ {% load staticfiles %} <!DOCTYPE html> <html lang="en ...
- java线程系列文章之一(线程的安全性)
本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/7421217,转载请注明. 当我们查看JDK API的时候,总会发现一些类 ...
- 电感式升压转换器-AIC1896 电感式升压转换器
电感式升压转换器-AIC1896 AIC1896是一个脉冲宽度调变(Pulse-Width-Modulation;PWM)控制之升压型转换器,它可以提供一个定电流以驱动白光LED. (图五A)为升压转 ...
- XDM、GDM和KDM
XDM.GDM.KDM是三种X Window的显示管理器 (1)XDM(默认的X Window System Display Manager)(2)GDM(gnome提供的Display Manage ...
- RPM 打包技术与典型 SPEC 文件分析
一 .rpm 介绍 1. 概述 RPM全称是 Red Hat Package Manager(Red Hat包管理器).几乎所有的 Linux 发行版本都使用这种形式的软件包管理安装.更新和卸载软件. ...
- C语言内存分析
C语言内存分析 一.进制 概念:进制是一种计数方式,是数值的表现形式 4种主要的进制: ①. 十进制:0~9 ②. 二进制:0和1 ③. 八进制:0~7 ④. 十六进制:0~9+a b c d e f ...