Добавление внешних тегов в строку XML в Golang - PullRequest
0 голосов
/ 10 октября 2018

Интересно, возможно ли добавить внешние теги к заданной строке XML.Например, чтобы обернуть мою строку XML с помощью

INPUT:

<My><XML><String>Something Here...</String></XML></My>

OUTPUT:

<OuterTag><My><XML><String>Something Here...</String></XML></My></OuterTag>

Я пробовал xml.Encoder.EncodeToken (),xml.Encoder.Encode (), но это не сработает.

Я спрашиваю об этом, потому что я хотел бы свернуть свой XML в конверт SOAP, так как Golang не встроил SOAPподдержка.

Любая идея приветствуется!

1 Ответ

0 голосов
/ 10 октября 2018

Я нашел способ, может быть, не самый лучший, но он работает.Просто используйте xml.Encoder.EncodeToken ()

Исходный xml - это CharData, который реализует интерфейс xml.Token.OuterTag - это StartElement, который также реализует интерфейс xml.Token.

encoder := xml.NewEncoder(buf)
outerTag := xml.StartElement {Name: xml.Name{Space:"", Local:"OuterTag"}}
encoder.EncodeToken(outerTag)
defer encoder.EncodeToken(outerTag.End())
encoder.EncodeToken(originalXmlBytes)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...