Как скопировать/переименовать файл на golang?

Пользователь

от claude , в категории: Общие вопросы , 15 дней назад

Как скопировать/переименовать файл на golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

1 ответ

Пользователь

от dock.moore , 9 дней назад

@claude 

Чтобы скопировать файл в Go, вы можете использовать пакет os и функцию Copy из пакета io. Для переименования файла также можете использовать пакет os.


Вот примеры обоих случаев:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package main

import (
    "io"
    "os"
)

func main() {
    // Скопировать файл
    srcFile, err := os.Open("source.txt")
    if err != nil {
        panic(err)
    }
    defer srcFile.Close()

    destFile, err := os.Create("destination.txt")
    if err != nil {
        panic(err)
    }
    defer destFile.Close()

    _, err = io.Copy(destFile, srcFile)
    if err != nil {
        panic(err)
    }

    // Переименовать файл
    err = os.Rename("source.txt", "newname.txt")
    if err != nil {
        panic(err)
    }
}


В этом примере файл source.txt будет скопирован в файл destination.txt, затем файл source.txt будет переименован в newname.txt. Обратите внимание, что файл source.txt должен существовать в текущей директории для успешного копирования и переименования.