/
abatalev
/
gitdiff2fly
Обзор
Документация
Войти
/
abatalev
/
gitdiff2fly
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
1.3
fs.go
50 строк
835 B
andrey
first revision
07 июн 2021, 08:46
07 июн 2021, 08:46
cc221a6
Код
Авторство
О чём код?
package main import ( "fmt" "io" "io/ioutil" "os" "strings" ) type fsInterface interface { copy(src string, dst string) error readFile(fileName string) []string } type OsSystem struct { } func (osx *OsSystem) readFile(fileName string) []string { content, err := ioutil.ReadFile(fileName) if err != nil { panic(err) } return strings.Split(string(content), "\n") } func (osx *OsSystem) copy(src, dst string) error { sourceFileStat, err := os.Stat(src) if err != nil { return err } if !sourceFileStat.Mode().IsRegular() { return fmt.Errorf("%s is not a regular file", src) } source, err := os.Open(src) if err != nil { return err } defer source.Close() destination, err := os.Create(dst) if err != nil { return err } defer destination.Close() _, err = io.Copy(destination, source) return err }