我想解析Yahoo Finance API返回的CSV格式的数据。我希望输出为company name: stock price格式。我已经下载了Yahoo API示例,代码如下:

String[] symbols = new String[] {"INTC", "BABA", "TSLA", "AIR.PA", "YHOO"};
Map<String, Stock> stocks = YahooFinance.get(symbols);


输出:


  INFO:解析CSV行:N / A,\“ INTC \”,\“ USD \”,N / A,N / A,N / A,\“ INTC \”,100,\“ INTC \”,N / A,N / A,\“ INTC \”,500,\“ INTC \”,32.35,\“ INTC \”,N / A,\“ INTC \”,\“ 2015/4/23 \”,\“ 4:00 pm \“,N / A,N / A,N / A,N / A,N / A,32348700,N / A,N / A,31.61,34.01,\” INTC \“,4736000000,\” INTC \“,\” INTC \“,不适用,\” INTC \“,153.21B,\” INTC \“,4730885000,\” INTC \“,\” 6/1/2015 \“,不适用,不适用,不适用,不适用,2.16,0.59,2.40,不适用,1.82,2.78,2.77,11.77,55.87B,24.19B,34.95
      2015年4月24日下午6:14:56 yahoofinance.quotes.QuotesRequest getResult


我只想要那家公司的价格。

最佳答案

您显示的输出是API的日志记录。

您在stocks变量中拥有所有请求的Stock对象。如果要打印每个价格,则应执行以下操作:

String[] symbols = new String[] {"INTC", "BABA", "TSLA", "AIR.PA", "YHOO"};
Map<String, Stock> stocks = YahooFinance.get(symbols);

for(Stock s : stocks.values()) {
    System.out.println(s.getName() + ": " + s.getQuote().getPrice());
}


查看javadoc,以查看API中可用的对象和方法。

10-06 08:42