我试图在对象本身上存储每个对象状态的自定义设置,但我不知道如何以面向对象的方式执行此操作.所以:
xml文件中的一个部分是:
<ObjectType>
可以是Blur,Sharpen,Smooth等.
但是说Blur只有在类型为Blur时才存储其他属性,例如:
<BlurType>Gaussian,Smart,etc</BlurType>
此外,我不确定是否应将这些存储为:
<a>something</a>
要么
<a>Type=something</a>
永远不要在XML中存储分隔数据.
也就是说,永远不会有一个元素包含逗号分隔值列表,或等号分隔值,或类似的东西. XML为您提供了创建列表的机制,如果您计划使用它,则不应重新发明.
存储像你正在谈论的列表的“XML方式”是这样的:
<BlurType> <option>Gaussian</option> <option>Smart</option> ... </BlurType>
或者,如果您有一组可以打开或关闭的特定值,
<BlurType> <Gaussian>true</Gaussian> <Smart>true</Smart> ... </BlurType>
第二种方法可以比第一种方法更严格地验证XSD.第一种是更灵活.你不希望在XML中的任何地方存储类型=某些东西.两者之间的中间地带将如下工作:
<BlurType> <option name="Gaussian">true</option> <option name="Smart">true</option> ... </BlurType>