Go ენისთვის ფაილების კოპირების ბიბლიოთეკის საჯარო ინტერფეისი (API) დიზაინი — ფუნქციების და ტიპების სათაურები, მაქსიმალურად მოსახერხებელი დეველოპერებისთვის.
sobes.tech AI
პასუხი AI-სგან
go package filecopy
import "io"
// CopyFile src-დან dst-მდე ფაილი ასრულებს. // თუ dst არ არსებობს, ახალი ფაილი შეიქმნება. // აბრუნებს ასლოკილ ბაიტების რაოდენობას და შეცდომას, თუ მოხდა. func CopyFile(srcPath, dstPath string) (int64, error)
// CopyFileWithOptions ასრულებს ფაილს დამატებითი პარამეტრებით. // მაგალითად, შეიძლება მითითდეს ბუფერი, თუ უნდა გადაწეროს ფაილი, ასლოკოს უფლებები და ა.შ. type CopyOptions struct { Overwrite bool // თუ ფაილი არსებობს, გადაწეროს BufferSize int // ბუფერის ზომა ასლოკისთვის, 0 — გამოიყენოს სტანდარტული მნიშვნელობა PreservePermissions bool // ასლოკოს უფლებები }
func CopyFileWithOptions(srcPath, dstPath string, opts CopyOptions) (int64, error)
// Copy ასლოკებს მონაცემებს io.Reader-დან io.Writer-მდე პარამეტრებით. // საშუალებას აძლევს ასლოკოს არა მხოლოდ ფაილები, არამედ ნებისმიერი მონაცემთა ნაკადები. func Copy(dst io.Writer, src io.Reader, opts CopyOptions) (int64, error)
ეს ინტერფეისი მოსახერხებელია, რადგან:
- არსებობს მარტივი CopyFile მეთოდი ძირითადი ფაილების ასლოკვისთვის.
- არსებობს გაფართოებული მეთოდი პარამეტრებით უფრო ზუსტი კონფიგურაციისთვის.
- არსებობს უნივერსალური Copy ნაკადებისთვის, რაც ზრდის მოქნილობას.
- გამოიყენება გასაგები ტიპები და სახელები, რომლებიც შეესაბამება Go-ის სტილს: