2 回答

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
這里有幾個(gè)問題在起作用:
JSON 定義的結(jié)構(gòu)并不是都可以用 CSV 表示的,例如:
對(duì)象例如
{"name":"john"}
數(shù)組例如
["john", "mike", "sam"]
沒有 CSV 標(biāo)準(zhǔn)。嗯,有 RFC-4180,但大多數(shù) CSV 編碼器/解碼器不遵守它,因?yàn)?Microsoft。
您使用的包編碼很差。
CSV 實(shí)現(xiàn)之間的主要區(qū)別之一是報(bào)價(jià)處理??紤] JSON 字符串:"\"Hello, world!\""
.
根據(jù)我們的編組器,我們最終可以得到字符串的以下任何 CSV 表示:
"""Hello, world!"""
"\"Hello, world!\""
'"Hello, world!"'
一些編碼器甚至?xí)D(zhuǎn)義字符串內(nèi)的逗號(hào)。您描述的包通過完全跳過逗號(hào)來規(guī)避這個(gè)問題。如果你問我,這是一個(gè)非常糟糕的設(shè)計(jì)決定。
你需要的一切都在 Go 的標(biāo)準(zhǔn)庫中:
- 2 回答
- 0 關(guān)注
- 285 瀏覽
添加回答
舉報(bào)