douxin8383 2014-05-28 23:52
浏览 104

向XML字符串添加正确的缩进

We've got a legacy system with XML where the XML is not pretty (i.e. entire file has no line breaks).

Is there a built in/native way to achieve pretty printing of XML in go? If not how does one go about achieving this?

  • 写回答

1条回答 默认 最新

  • dongyou6795 2014-05-29 00:03
    关注

    You can use xml.MarshalIndent, for example :

    package main
    
    type xmldoc struct { ........ fields ...... }
    
    func main() {
        var doc xmlDoc
        err := xml.Unmarshal([]byte(xml-data), &doc)
        if err != nil {
            fmt.Printf("error: %v", err)
            return
        }
        out, err := xml.MarshalIndent(doc, "", "\t")
        if err != nil {
            fmt.Printf("error: %v", err)
            return
        }
        fmt.Println(out)
    }
    

    or from the command line you can always use xmlint :

    $ xmllint --format --recover file.xml > formatted.xml
    

    or do it in bulk check Format all XML files in a directory and save them in a subdirectory

    评论

报告相同问题?

悬赏问题

  • ¥15 有人能看一下我宿舍管理系统的报修功能该怎么改啊?链表那里总是越界
  • ¥15 cs loadimage运行不了,easyx也下了,没有用
  • ¥15 r包runway详细安装教程
  • ¥15 Html中读取Json文件中数据并制作表格
  • ¥15 谁有RH342练习环境
  • ¥15 STM32F407 DMA中断问题
  • ¥15 uniapp连接阿里云无法发布消息和订阅
  • ¥25 麦当劳点餐系统代码纠错
  • ¥15 轮班监督委员会问题。
  • ¥20 关于变压器的具体案例分析