filecopy.go 431 B

1234567891011121314151617181920212223242526272829
  1. // filecopy.go
  2. package main
  3. import (
  4. "fmt"
  5. "io"
  6. "os"
  7. )
  8. func main() {
  9. CopyFile("target.txt", "source.txt")
  10. fmt.Println("Copy done!")
  11. }
  12. func CopyFile(dstName, srcName string) (written int64, err error) {
  13. src, err := os.Open(srcName)
  14. if err != nil {
  15. return
  16. }
  17. defer src.Close()
  18. dst, err := os.OpenFile(dstName, os.O_WRONLY|os.O_CREATE, 0644)
  19. if err != nil {
  20. return
  21. }
  22. defer dst.Close()
  23. return io.Copy(dst, src)
  24. }