Does anyone know why Google Go program 1 works, below, and program 2
doesn't? The only difference - I read in the filename from the console in
the one that doesn't work but it is a literal in the one that works... I
tried typing in the full path for the file, and also "..sample.txt" instead
of "sample.txt", but they didn't solve it either.
// program 1 - this works:
package main import (
"fmt"
"os"
"bufio" )
func main() {
filename := getFilename()
fmt.Println("opening:",filename)
// fmt.Println("opening:sample.txt")
_ , err := os.Open("sample.txt")
// _ , err := os.Open(filename)
if err != nil {
panic(err)
}
}
func getFilename() string {
reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter file name: ") // type in anything, this file
name not used
filename, _ := reader.ReadString('\n')
return filename
}
// program 2 - this doesn't work, gives error shown below:
package main
import (
"fmt"
"os"
"bufio"
)
func main()
filename := getFilename()
fmt.Println("opening:",filename)
// fmt.Println("opening: sample.txt")
// _ , err := os.Open("sample.txt")
_ , err := os.Open(filename)
if err != nil {
panic(err)
}
}
func getFilename() string {
reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter file name: ") // type in "sample.txt" (without
the quotes)
filename, _ := reader.ReadString('\n')
return filename
}
Error message, panic invoked -
: The filename, directory name, or volume label syntax is incorrect.
goroutine 1 [running]:
main.main()
C:/installed programs/go/src/testopen2.go:16 +0x158
exit status 2
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.