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 ...
随机推荐
- ThinkPHP join() table()方法的使用,多表查询
ThinkPHP模型类比较常用的两个方法,table() join() table 1 $list = M()->table('user1 a, user2 b')->where('a. ...
- JFinal框架使用
表单直接提交页面,不用ajax 后台; /** * 修改 */ public void edit() { String id=getPara("id"); String job=g ...
- ICMP隧道工具ptunnel
ICMP隧道工具ptunnel 在一些网络环境中,如果不经过认证,TCP和UDP数据包都会被拦截.如果用户可以ping通远程计算机,就可以尝试建立ICMP隧道,将TCP数据通过该隧道发送,实现不受 ...
- 在Eclipse中修改web项目的名称
在Eclipse中修改web项目的名称 一.误区: 单击要修改名称的项目上右键Refactor->Rename,然后修改成另外一个名称 (光这样是不够的,哪怕你再修改web.xml中的displ ...
- from setuptools import setup, find_packages ImportError: No module named set
1 from setuptools import setup, find_packages ImportError: No module named set wget http://peak.tele ...
- HDU 5699 货物运输 二分
货物运输 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5699 Description 公元2222年,l国发生了一场战争. 小Y负责领导工人运输物 ...
- hierarchyid有关的一些函数
于hierarchyid有关的一些函数主要有: GetAncestor :取得某一个级别的祖先 GetDescendant :取得某一个级别的子代 GetLevel :取得级别 ...
- Inspect a new tab · cyrus-and/chrome-remote-interface Wiki
Inspect a new tab · cyrus-and/chrome-remote-interface Wiki Runtime.evaluate
- [Phonegap+Sencha Touch] 移动开发18 Sencha Touch项目通过phonegap打包后的程序名字的问题
之前说过 sencha phonegap init com.pushsoft.myapp MyApp 之后打包的程序安装包apk的名字是"MyApp.apk",显示在手机桌面上的程 ...
- 怎样用Java代码来把SSL的证书自己主动导入到Java的秘钥存储文件(keystore)
我们在开发或者使用SSL的过程中,非常多的软件须要我们提供java的keystore.特别是一些基于Java的中间件产品. 我们常规的做法是JDK自带的工具命令(keytool)去做.比方,以下的样例 ...