ホームページ > バックエンド開発 > Golang > Go の docopt で「interface{}」を「string」に安全に変換するにはどうすればよいですか?

Go の docopt で「interface{}」を「string」に安全に変換するにはどうすればよいですか?

DDD
リリース: 2024-12-04 19:24:11
オリジナル
407 人が閲覧しました

How to Safely Convert `interface{}` to `string` in Go's docopt?

Go でインターフェイス{}を文字列に変換する

docopt を使用してコマンドライン引数を解析する場合、必要な状況が発生することがあります。インターフェース値を含むマップから文字列値を連結します。{}ただし、インターフェイス{}を文字列と直接連結しようとすると、型不一致エラーが発生します。

この問題を解決するには、型アサーションを使用してインターフェイス{}の値を文字列に変換する必要があります。{}提供された例では:

arguments["<host>"].(string) + ":" + arguments["<port>"].(string)
ログイン後にコピー

.(string) アサーションは、arguments[""] と argument[""] に格納されているインターフェース{}が変換できることをアサートします。文字列に。マップのタイプは map[string]interface{} であるため、これは重要です。

docpt の新しいバージョンでは、専用の変換メソッドも使用できます。

host, err := arguments.String("<host>")
port, err := arguments.String("<port>")
host_port := host + ":" + port
ログイン後にコピー

これらのメソッドを使用することにより、を使用すると、docopt コンテキスト内で、interface{} の値を文字列に簡単に変換でき、必要に応じてそれらを操作したり連結したりできます。

以上がGo の docopt で「interface{}」を「string」に安全に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート