Как видно из названия, я пытаюсь прочитать файл пазла судоку с размером пазла 1 9x9. Вот код:
package main
import (
"bufio"
"fmt"
"log"
"os"
)
func check(e error){
if e != nil{
panic(e)
}
}
func main(){
var mFile string
var puzzle []string
s := bufio.NewReader(os.Stdin)
fmt.Println("Please enter file name: ")
mFile, _ = s.ReadString('\n')
fmt.Print("Confirm file: " + mFile)
readFile, err := os.Open(mFile)
if err != nil{
log.Fatalf("Failed to open file: %s", err)
}
fileScanner := bufio.NewScanner(readFile)
fileScanner.Split(bufio.ScanLines)
for fileScanner.Scan() {
puzzle = append(puzzle, fileScanner.Text())
}
readFile.Close()
for _, eachLine := range puzzle{
fmt.Println(eachLine)
}
}
Программа запрашивает имя файла, которое принято, и строка 24:
fmt.Print("Confirm file: " + mFile)
Подтверждает, что имя файла записано, но когда оно передает переменная к os.Open говорит, что файл не существует. Но если я вручную кодирую os.Open ("theFileName.txt"), файл открывается и печатается, как и ожидалось.
По любой причине os.Open не распознает переменную и только жестко закодированный файл. имя