我想知道什麼是最優雅的方式來編寫一個鍵值表 編碼地圖到http.ResponseWriter。如何優雅或有效地寫一個地圖到http.ResponseWriter
Respond(kv map[string]string) {
for key, value := range kv {
fmt.Fprintf(a.w, "%s:%s\n", key, value)
}
}
我必須遵循該鍵值格式:
鍵值形成編碼
在關鍵值形式的消息是線的序列。每行用一個鍵開始 ,後跟一個冒號,以及與 鍵相關聯的值。該行由一個換行符終止(UCS代碼點10, 「\ n」)。一個鍵或值不能包含一個換行符,而且一個鍵也不能包含冒號。
不得在 之前或冒號或換行符後面添加其他字符,包括空格。該消息必須以UTF-8編碼爲 產生一個字節字符串。
我想過使用編碼/ csv,但不是有點矯枉過正?
編輯:到目前爲止我想出了。 (感謝所有的建議答案)
http://godoc.org/github.com/kugutsumen/encoding/keyvalue
https://github.com/kugutsumen/encoding/tree/master/keyvalue
我沒有使用http.HandleFunc :)我一直在尋找的東西效率比調用fmt.Fprintf問題...... – Kugutsumen
我已經編輯我的答案使用'bytes'包而不是'fmt'包。它可能更接近你想要的。 – Intermernet
你也可以使用'strings'包來實現相同的功能。 – Intermernet