我正在尝试将一些XML解包成一个具有interface{}类型的结构体。然而,无论何时我试图运行它,代码都无法获取任何东西。所有其他元素似乎都正常工作,如果我将类型设置为string或[]byte,它将起作用,但是我需要它更加灵活。
我的兴趣所在的元素位于第32行 - FloorRefID
链接:https://play.golang.org/p/Ehr8qx1aWf
给一些背景信息;我正在负责一个与供应商集成的项目,在这个项目中,有时我们会收到XML格式的数据,有时会收到JSON格式的数据。我希望构建一个能够解析两种结构的东西,而不是复制这个结构集。它有许多子结构,这意味着需要更多的工作来维护两个几乎相同但具有不同属性的结构。
当我们收到JSON数据时,字段可以是字符串或数字。
我已经阅读过不能将接口解封(unmarshal)的文章,但是否有人知道如何解决我的这种情况?
我的兴趣所在的元素位于第32行 - FloorRefID
链接:https://play.golang.org/p/Ehr8qx1aWf
<?xml version="1.0" encoding="UTF-8"?>
<Locations totalPages="1" currentPage="1" pageSize="25">
<WirelessClientLocation macAddress="00:00:00:00:00:00">
<MapInfo mapHierarchyString="Head office>Ground floor>Store" floorRefId="-1122334455667789">
<Image imageName="floorPlan1.png" />
</MapInfo>
<MapCoordinate x="2850" y="3000" unit="FEET" />
</WirelessClientLocation>
<WirelessClientLocation macAddress="11:11:11:11:11:11">
<MapInfo mapHierarchyString="Head office>Ground floor>Store" floorRefId="-1122334455667789">
<Image imageName="floorPlan1.png" />
</MapInfo>
<MapCoordinate x="10.72" y="76.49" unit="FEET" />
</WirelessClientLocation>
<WirelessClientLocation macAddress="26:cd:96:46:0b:2b">
<MapInfo floorRefId="0" />
<MapCoordinate x="51.52" y="4.2" unit="FEET" />
</WirelessClientLocation>
</Locations>
给一些背景信息;我正在负责一个与供应商集成的项目,在这个项目中,有时我们会收到XML格式的数据,有时会收到JSON格式的数据。我希望构建一个能够解析两种结构的东西,而不是复制这个结构集。它有许多子结构,这意味着需要更多的工作来维护两个几乎相同但具有不同属性的结构。
当我们收到JSON数据时,字段可以是字符串或数字。
我已经阅读过不能将接口解封(unmarshal)的文章,但是否有人知道如何解决我的这种情况?