|
|
1
2
我想你必须告诉警察
上面的代码提供了以下输出:
使用java版本“1.6.0\U 20” |
|
|
2
1
我的建议是永远不要依赖writeAttribute()的2参数版本,因为它到底应该输出什么的定义并不清楚:它应该使用namespace“”(也称为“no namespace”)还是当前默认的名称空间?这尤其令人困惑,因为根据XML规范,属性从不使用默认名称空间(仅显式名称空间)。因此,可以说,所有表达的行为都可能被视为是正确的;但显然他们不可能都是。只是staxapi没有正确定义(AFAIK)真正的答案应该是什么(这很糟糕)。 所以:只需指定属性应该使用的名称空间(“no namespace”可以使用“null”或“no namespace”),事情应该会更好。 据我所知,JDK版本的问题是,有些版本假设属性实际上使用了默认名称空间;这就是为什么添加了假“xmlns=”“”。这是不必要的。 |