我有以下 xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<eq1>-3.874999999999* Math.pow(x, 4.0) + 48.749999999993* Math.pow(x, 3.0)</eq1>
<eq2>-0.166666666667* Math.pow(x, 4.0) + 2.166666666667* Math.pow(x, 3.0)</eq2>
</root>
我想解析这两个方程并将它们放入变量中以进行进一步计算。我当前使用的方法是解析它们并将它们放入字符串中,但它不起作用,因为我需要使用方程执行计算。
有更好的方法可以解决这个问题吗?提前致谢。
最佳答案
您可以使用 JAXB 将 XML 文件解码为具有这些字段的自定义对象。
你的对象可能看起来像这样:
@XmlRootElement
public class Equations {
String eq1;
String eq2;
// create getters and setters as well
// and put the @XmlElement annotation on the setters
}
然后只需从 Equations 对象中使用它们即可。 (equations.getEq1()
例如);
这是对 JAXB 的简单快速的介绍:http://www.mkyong.com/java/jaxb-hello-world-example/
关于方程的执行,一种方法是解析字符串并查看您拥有哪些指令和数字并将它们放入堆栈中,然后当所有内容都被解析后,执行操作(您将拥有数字和操作在堆栈上)。也许这需要更多的工作,但这绝对是解决问题的一种有趣的方法。
关于java - 数据java的XML解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10107376/