[Go] string 型のデータを io.ReadCloser インターフェースを満たせるようにする

作成日: 2023年03月05日

strings パッケージの NewReader 関数と io パッケージの NopCloser 関数を使用することで、string 型のデータを io.ReadCloser インターフェースを満たすようにすることができます。

package main

import (
    "fmt"
    "io"
    "strings"
)

func main() {
    str := "hello"
    strWithReadCloser := io.NopCloser(strings.NewReader(str))
    if _, ok := strWithReadCloser.(io.ReadCloser); ok {
        fmt.Println("io.ReadCloser インターフェースを満たしています")
    }
}

実行結果は下記のとおりです。

io.ReadCloser インターフェースを満たしています
Go