StoreBackEnd/pkg/utils/FileReceiver.go

32 lines
565 B
Go

package utils
import (
"bufio"
"fmt"
"os"
)
// ReceiveFile Permet de récupérer un fichier sur un reader
func ReceiveFile(fileName string, fileSize int, reader *bufio.Reader) bool {
file, fileErr := os.Create(fmt.Sprintf("/home/benjamin/sbe/%s", fileName))
if fileErr != nil {
return false
}
defer file.Close()
currentSize := 0
buffer := make([]byte, 1024)
for currentSize < fileSize {
length, err := reader.Read(buffer)
if err != nil {
return false
}
currentSize += length
file.WriteAt(buffer, int64(currentSize))
}
return true
}