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()

    }

}

猜你喜欢

转载自www.cnblogs.com/smartrui/p/12020145.html