码迷,mamicode.com
首页 > 其他好文 > 详细

golang 文件基本操作

时间:2018-11-28 00:24:14      阅读:242      评论:0      收藏:0      [点我收藏+]

标签:需要   close   []   ==   读取文件   defer   ola   string   import   

import (
	"bufio"
	"fmt"
	"io"
	"os"
)

//写入文件
func WriteFile(path string) {
	//新建文件
	f, err := os.Create(path)
	if err != nil {
		fmt.Println("err=", err)
		return
	}
	//使用完毕需要关闭文件
	defer f.Close()
	for i := 0; i < 10; i++ {
		f.WriteString(fmt.Sprintf("i=%d\n", i))
	}
}

//读取文件
func ReadFile(path string) {
	//打开文件
	f, err := os.Open(path)
	if err != nil {
		fmt.Println("err=", err)
		return
	}

	//关闭文件
	defer f.Close()

	buf := make([]byte, 1024)

	if n, err1 := f.Read(buf); err1 != nil && err1 != io.EOF {
		fmt.Println("err1=", err1)
		return
	} else {
		fmt.Println("buf=", string(buf[:n]))
	}
}

//读取文件一行
func ReadFileLine(path string) {
	//打开文件
	f, err := os.Open(path)
	if err != nil {
		fmt.Println("err=", err)
		return
	}

	//关闭文件
	defer f.Close()

	r := bufio.NewReader(f)
	for {
		if buf, err := r.ReadBytes(‘\n‘); err != nil {
			if err == io.EOF {
				break
			}
		} else {
			fmt.Println(string(buf))
		}
	}
}

func main() {
	path := "./demo.txt"
	WriteFile(path)
	ReadFile(path)
	ReadFileLine(path)
}

  

golang 文件基本操作

标签:需要   close   []   ==   读取文件   defer   ola   string   import   

原文地址:https://www.cnblogs.com/lemonzwt/p/10029847.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!