35 lines
725 B
Go
35 lines
725 B
Go
// Пакет datafile предназначен для чтения данных из файлов
|
|
package datafile
|
|
|
|
import (
|
|
"bufio"
|
|
"os"
|
|
"strconv"
|
|
)
|
|
|
|
// GetFloats читает значение float64 из каждой строки файла
|
|
func GetFloats(fileName string) ([3]float64, error) {
|
|
var numbers [3]float64
|
|
file, err := os.Open(fileName)
|
|
if err != nil {
|
|
return numbers, err
|
|
}
|
|
i := 0
|
|
scanner := bufio.NewScanner(file)
|
|
for scanner.Scan() {
|
|
numbers[i], err = strconv.ParseFloat(scanner.Text(), 64)
|
|
if err != nil {
|
|
return numbers, err
|
|
}
|
|
i++
|
|
}
|
|
err = file.Close()
|
|
if err != nil {
|
|
return numbers, err
|
|
}
|
|
if scanner.Err() != nil {
|
|
return numbers, scanner.Err()
|
|
}
|
|
return numbers, nil
|
|
}
|