Go语言文件操作案例

package main

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

func main() {

var srcFileName string
var dstFileName string
fmt.Println("请输入源文件名称:")
fmt.Scan(&srcFileName)
fmt.Println("请输入目的文件名称:")
fmt.Scan(&dstFileName)


if srcFileName==dstFileName{
    fmt.Println("源文件和目的文件不能同名")
    return
}

//只读方式打开
sf,err:=os.Open(srcFileName)
if err!=nil{
    fmt.Println("打开源文件报错",err)
}

//新建目的文件
df,err2:=os.Create(dstFileName)
if err2!=nil{
    fmt.Println("新建目的文件失败",err2)
    return
}

//从源文件读取内容 写入目的文件
buf:=make([]byte,1024*4)//4k
for   {
n,err:=sf.Read(buf)
if err!=nil{
    //fmt.Println("err=",err)
    if err==io.EOF{
        break
    }
}
//写入
df.Write(buf[:n])
}



//操作文件 关闭文件
defer sf.Close()
defer df.Close()


}

你可能感兴趣的:(Go语言文件操作案例)