[解決済み] interface{}を文字列に変換するには?
2022-05-05 16:55:46
質問
を使っています。 ドコプト を使用してコマンドライン引数をパースしています。これはうまくいき、次のようなマップになります。
map[<host>:www.google.de <port>:80 --help:false --version:false]
今度は、このファイルを連結して
host
と
port
の値を、2つの値の間にコロンを入れた文字列に変換します。基本的には、次のようなものです。
host := arguments["<host>"] + ":" + arguments["<port>"]
残念ながら、これはエラーメッセージが表示され、うまくいきません。
無効な操作:引数[""] + ":" (インターフェース{}と文字列の型が不一致)
だから、明らかにマップから得た値(これは単なる
interface{}
を文字列に変換します。そこで質問なのですが、どうすればいいのでしょうか?
どのように解決するのですか?
を追加する必要があります。
タイプアサーション
.(string)
. これは、マップの型が
map[string]interface{}
:
host := arguments["<host>"].(string) + ":" + arguments["<port>"].(string)
最新版Docoptのリターン オプティクス オブジェクトに変換するためのメソッドを持っています。
host, err := arguments.String("<host>")
port, err := arguments.String("<port>")
host_port := host + ":" + port
関連
-
[解決済み] panic: ランタイムエラー:Goのインデックスが範囲外
-
golang インストールプロンプト:ダイヤル tcp 216.58.200.241:443: connectex: 接続の試行に失敗しました。
-
[解決済み] Goのペア/タプルデータ型
-
[解決済み] 環境変数GOPRIVATEの設定方法
-
[解決済み] go mod vendor` コマンドの目的は何ですか?
-
[解決済み] Goでマップにキーが含まれているかどうかを確認するには?
-
[解決済み] Goでint値をstringに変換する方法は?
-
[解決済み] ゼロ終端のバイト配列を文字列に変換するにはどうすればよいですか?
-
[解決済み】Goのタグはどのような用途に使われますか?
-
[解決済み】Goの構造体にデフォルト値を設定する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 構造体のマップのデフォルト値は何ですか?
-
[解決済み] GolangパッケージがGOROOTにない(/usr/local/go/src/packageName) [閉じた]。
-
[解決済み] Golang 構造体へのキャストインターフェイス
-
[解決済み] golangでリーズナブルなスタック実装をお探しですか?
-
[解決済み] Goでオブジェクトの型を見つけるには?
-
[解決済み] 2枚のスライスの等価性を確認する
-
[解決済み] スライスのメソッドを含む
-
[解決済み】マップからキーのスライスを取得する
-
[解決済み】データ(型インターフェース{})を文字列に変換できない:型アサーションが必要
-
[解決済み】インターフェースのスライスを変換するタイプ