目录

一、常用读取文件的三种方式

(1)利用os和file原生操作读文件

(2)使用bufio读取文件

(3)使用ioutil读取文件

二、常用写文件的三种方式

(1)利用os和file原生操作写文件

(2)使用bufio写文件

(3)使用ioutil写文件

三、常用复制文件的四种方式

(1)利用os和file原生操作复制文件

(2)使用bufio读写操作来复制文件

(3)使用ioutil读写操作来复制文件

(4)io.copy()来复制

?四、其他操作

(1)指定断点位置读写文件

(2)***文件复制之断点续传***

(3)遍历文件夹

一、常用读取文件的三种方式

(1)利用os和file原生操作读文件

注意:以open打开的方式是只读的

(2)使用bufio读取文件

注意:默认缓冲区大小是4096,这里我们可以自定义缓冲区大小

(3)使用ioutil读取文件

注意:ioutil是一次性读取整个文件,不适用于大文件读写操作,可能发生内存泄漏

二、常用写文件的三种方式

(1)利用os和file原生操作写文件

OpenFile是一个更一般性的文件打开函数,大多数调用者都应用Open或Create代替本函数。它会使用指定的选项(如O_RDONLY等)、指定的模式(如0666等)打开指定名称的文件。

  • 可指定选项【只读,只写,可读写,追加……】和模式【 ModePerm FileMode = 0777 // 覆盖所有Unix权限位】

(2)使用bufio写文件

注意:bufio是写在缓冲区里面,一定要Flush,否则文件中没有数据

(3)使用ioutil写文件

三、常用复制文件的四种方式

(1)利用os和file原生操作复制文件

(2)使用bufio读写操作来复制文件

(3)使用ioutil读写操作来复制文件

(4)io.copy()来复制


四、其他操作

(1)指定断点位置读写文件

(2)***文件复制之断点续传***

如果在传输文件的过程中发生断电等情况,文件传输了一半后异常终止了,当恢复后不希望重新传输,而希望接着传输。

可创建一个临时文件用户保存当前已经传输的字节数,每次传输时先读取临时文件的记录。如传输完成则删除临时文件

第一次传输的时候,在其中模拟断电(panic),如下图所示,文件复制到 5120 字节时断电。后恢复,文件接着从5123字节开始复制,而不会从头开始复制~~

(3)遍历文件夹