• 文件内容操作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    换行了
    

      

  • 相关阅读:
    《RTC — RTC相关操作以及如何同步系统时间》
    《关闭服务器,再次启动服务器提示bind:address already in use》
    《海思中内存分配和优化》
    《开发板 — 查看共享内存情况》
    《通过himm读取指定引脚并保存在共享内存中》
    《开发板 — 格式化TF卡》
    《网络编程 — UDP》
    《网络编程 — 服务器中bind的ip地址是什么》
    《使用gdb中core dump》
    《 Linux套接字编程中的5个隐患 》
  • 原文地址:https://www.cnblogs.com/sdutmyj/p/4596218.html
Copyright © 2020-2023  润新知