我是xstream的新手。 考虑一块xml:
<?xml version="1.0"?>
<els>
<el attInt="3" attDbl="1.34525"/>
</els>
我需要转换attDbl属性,将小数点移动attInt指定的位数。我没有看到如何使用转换器,因为我似乎无法访问转换器界面中的两个属性。这是我可以用转换器做的事情,还是我应该为此目的使用xslt?
感谢您的帮助
答案 0 :(得分:1)
在'el'级别执行的转换器可以通过reader
参数访问这两个属性:
public class ElConverter implements Converter {
@Override
public Object unmarshall(HierarchicalStreamReader reader, UnmarshallingContext context) {
int attInt = Integer.parseInt(reader.getAttribute("attInt"));
double attDbl = Double.parseDouble(reader.getAttribute("attDbl"));
...
}
@Override
public boolean canConvert(Class type) {
return El.class.isAssignableFrom(type);
}