Go文件内容追加问题

今天在用文件追加时,遇到点小问题,一直没法追加,起初是这样的

fp,err1 = os.OpenFile(filename,os.O_APPEND,0666)

上面这个死活加不了,后面改成

fp,err1 = os.OpenFile(filename,os.O_WRONLY| os.O_APPEND,0666)

就是加上O_WRONLY这个就行了,不知道为啥,凡正能追加了。

完全代码如下

func writeUrl(urlList []string){
	if  len(urlList) == 0 {
		return
	}
	var filename  = "jump_url.txt"
	var fp *os.File
	var err1 error

	defer fp.Close()

	if t,_ := PathExists(filename); !t{
		fp,err1 = os.Create(filename)
	} else {
		fp,err1 = os.OpenFile(filename,os.O_WRONLY| os.O_APPEND,0666)
	}
	if err1 != nil {
		fmt.Println("文件操作失败", err1)
	}

	writer :=bufio.NewWriter(fp)

	for _,u := range urlList{

			n, err :=writer.WriteString(u + "\n")
			if err != nil {
				fmt.Println("write error:" ,err)
			} else {
				fmt.Println("write success:", n)
			}
			writer.Flush()

	}

}
posted @ 2019-12-11 02:22  随彦心MO  阅读(1401)  评论(0编辑  收藏  举报