Go语言实现文本文件拷贝

文本文件的读写是程序的常见操作。

这个程序的功能实现文件的拷贝操作,包括了文件的打开、关闭和读写。该程序是按行读入数据文件的内容,然后将其写入到另外一个文件中。


Go语言程序:

// fileio project main.go
package main

import (
	"bufio"
	"io"
	"log"
	"os"
	"syscall"
)

func main() {
	fr, err := os.OpenFile("/home/lin/data.txt", syscall.O_RDONLY, 0)
	if err != nil {
		log.Fatal(err)
	}
	defer fr.Close()

	fw, err := os.OpenFile("/home/lin/result.txt", syscall.O_CREAT|syscall.O_WRONLY, 0777)
	if err != nil {
		log.Fatal(err)
	}
	defer fw.Close()

	buf := bufio.NewReader(fr)
	for {
		line, err := buf.ReadBytes('\n')
		fw.Write(line)
		if err == io.EOF {
			break
		} else if err != nil {
			log.Fatal(err)
		}
	}
}


测试文件data.txt(输入文件)的内容:

This is my first file read-write program.
It's just for testing.


程序说明:程序中使用了多个包以及多个库函数,其功能和作用不同,需要仔细体会。

posted on 2017-08-11 06:20  海岛Blog  阅读(244)  评论(0编辑  收藏  举报

导航