我有一个看起来像这样的XML文件。
<Almond> Roasted Almonds,Almond Extract,Almond Sauce,Almond Milk,Almond Cake,Almond Ice Cream,Almond Paste </Almond>
<American Cheese> MilkWhey,Cheese Dip,Sliced Cheese </American Cheese>
<Apple> Apple Sauce,Apple Pie,Pear,Apple Juice,Apple Cider,Apple Butter </Apple>
<Avocado> Guacamole,California Sushi Rolls,Hass Avocado,Avocado Oil </Avocado>
<Banana> Banana Bread,Banana Cream Pie,Banana Split,Banana Pudding </Banana>
你建议采用不同的方式来格式化吗?
我将需要获得与杏仁,美国奶酪,苹果等相关的所有食物。
我将使用vb.net
阅读数据答案 0 :(得分:2)
我没有使用命令行分隔值,而是使用名为&lt; Item&gt;的子标签。或者某些东西,所以解析器可以有机会处理它们。它更冗长,但更好的XML。
如果XML在这里不起作用,我会提出一些不那么冗长的东西,比如JSON。我没有看到标签和元数据对你有好处。
答案 1 :(得分:0)
从您的XML中,您似乎需要某种“标记”。
如果我们假设您的xml用于存储成分,那么为什么不使用名为<ingredient/>
这里是XML的样子:
<recipelist>
<recipe name="Roasted Almonds">
<ingredients>
<ingredient>Almond</ingredient>
</ingredients>
</recipe>
<recipe name="Almond Extract">
<ingredients>
<ingredient>Almond</ingredient>
<ingredient>some other</ingredient>
</ingredients>
</recipe>
</recipelist>
然后,您可以使用LinQ或其他一些XML查询语言来查询上面的相同结果。 XPath查询示例如下:
//recipelist/recipe[ingredients/ingredient/text()='Almond']/@name
这会给所有以“杏仁”为成分的食谱。 这还可以为其他目的提供更灵活的XML格式,并且更容易从数据库生成。