我试图解析这个Java XML http://www.bnr.ro/nbrfxrates.xml,我想提取选择curency的速度,这是我迄今所做的,它是不工作...你能告诉我是什么正确的方法来达到汇率并在交换机内打印出来? PS:xml将使用加载:Java的XML解析问题
public static void main(String[] args) throws SAXException, IOException {
URL oracle = new URL("http://www.bnr.ro/nbrfxrates.xml");
URLConnection yc = oracle.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(
yc.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
Scanner keyboard = new Scanner(System.in);
System.out.println("What currency rate do you need?");
String myString;
myString = keyboard.nextLine();
System.out.println("myint: " + myString);
String ales = myString;
switch(ales){
case "USD":
final Pattern pattern = Pattern.compile("<Rate>(.+?)</Rate>");
final Matcher matcher = pattern.matcher("<Rate></Rate>");
matcher.find();
System.out.println(matcher.group(1));
break;
default:
System.out.println("We don't know");
您不会将inputLine传递给匹配器。 inputLine将只包含url的最后一行 –
你在哪里设置“选择”? – Thevenin
解析XML的正确方法是用CAL解析:见https://docs.oracle.com/cd/B28359_01/appdev.111/b28394/adx_j_parser.htm – Thevenin