The "open none-exist-file" comes from the Go library. The rest of the
characters (which I can not read) come from your OS. When you build the
Go distribution, it uses the strerror function to gather the standard OS
error messages. In your case, it got Chinese messages. Those messages
are then built into the Go libraries for use when printing system
errors.
This is all definitely rather awkward and will need better handling at
some point.
Ian
I suspect the problem you are seeing is with the way your console display text. If so, it has been discussed before http://goo.gl/fQeKI.
As Ian said, go syscall package uses system error messages in "your system default language" - see windows (Errno).Error implementation in $GOROOT/src/pkg/syscall/syscall_windows.go. We call Windows FormatMessage api with dwLanguageId parameter set to 0. We could try and change this bit of code to force everyone to use English error messages. I do not know if it is better solution.