4

フォルダー内のファイルの内容を見つけようとしているので、フォルダーの内容をリストし、ループしながらファイルを読み取ろうとしています。

files, _ := ioutil.ReadDir("documents/")
for _, f := range files {
        //fmt.Println(f.Name())

    z := "documents/" + f.Name()
    fmt.Println(z) // prints out 'documents/*doc name*' recursively
    z, err := ioutil.ReadFile(z) // This line throws up the error

私が得るエラーは: test.go:85: cannot assign []byte to z (type string) in multiple assignment.

4

1 に答える 1

6

文字列に変換[]byteできますが、複数の戻り値を持つ関数の 1 つの値を変換することはできません。

buf, err := ioutil.ReadFile(z)
if err != nil {
        log.Fatal(err)
}
z = string(buf)

ただし、多くの場合、バイナリ データを文字列に変換せに直接操作する方が適切bufです。

于 2013-07-03T14:04:56.050 に答える