zoukankan      html  css  js  c++  java
  • 文件内容操作NSHandle

      //2对文件内容的操作
        NSHandle
    文件内容为:hello world!
       //NSHandle 文件句柄
       //创建文件句柄
       //以只读的方式打开指定位置的文件,生成文件句柄
       NSFileHandle *fh=[NSFileHandle fileHandleForReadingAtPath:文件路径名];
       //读指定的字节数到NSData
       NSData *data=[fh readDataOfLength:3];
       //转换成字符串输出
       NSString *str=[[NSString alloc] initWithData:data encoding:
           NSUTF8StringEncoding];
       NSLog(@"%@",str);//输出为:hel
       //继续读(接着上次读取的进度继续读)
       data=[fh readDataOfLength:5];
        NSString *str=[[NSString alloc] initWithData:data encoding:
           NSUTF8StringEncoding];
       NSLog(@"%@",str);//输出为:lo wo
       //如果文件内容不多可以用下面的方法直接读到文件结尾
       data=[fh readDataToEndOfFile];
       
        NSString *str=[[NSString alloc] initWithData:data encoding:
           NSUTF8StringEncoding];
       NSLog(@"%@",str);//如果没有上面的两句那么会直接输出hello world!
       [str release];
       
       //写文件,假设文件内容为0123456789
       
       //以只写的方式打开文件生成文件句柄
       
       NSFileHandle *fh=[NSFileHandle fileHandleForWritingAtPath:文件路径名];
       //把字符串hello写进文件
       [fh writeData:[@"hello" dataUsingEncoding:NSUTF8StringEncoding]];
       //打开文件时里面的内容变成了hello56789 hello替换掉了01234的内容
       //文件里的内容并没有被清空,这和c语言不一样.写的内容直接覆盖前面,这和c语言的追加也不一样
       
       //可以用下面的方法将文件内容截断至0字节
       [fh truncateFileAtOffset:0];
       
       //在写入就和c语言的写一样了
       
       
       
       //追加假设文件内容为012345
       //将读写指针都放到尾端
       [fh seekToEndOfFile];
       [fh writeData:[@"xxxx" dataUsingEncoding:NSUTF8StringEncoding]];
       //文件的内容为012345
       //xxxx    换行了
    

      

  • 相关阅读:
    国外名校课程视频爆红 网友总结“必杀技”(图)
    设置mysql密码
    Writing Linux LCD drivers—深入分析framebuffer设备驱动的结构
    LAMP架构中,php 与 php、php与C语言程序等 之间 的网络通信 问题
    API & ABI
    Linux 6初体验:桌面性能堪比新版Ubuntu
    diff 比较两个文件夹
    11种错误的保养皮肤习惯
    服务器领域Linux击败Windows的5大理由
    CentOS5.5 FTP安装配置
  • 原文地址:https://www.cnblogs.com/sdutmyj/p/4596218.html
Copyright © 2011-2022 走看看