2015-05-29 34 views
1

我在Spring MVC应用程序中有一个计划任务(使用cron)。程控任务里面我要在下面的链接从外部服务器获得一个CSV:使用Spring MVC从外部服务器自动获取CSV

http://www.aemet.es/es/eltiempo/observacion/ultimosdatos_6172O_datos-horarios.csv?k=and&l=6172O&datos=det&w=0&f=temperatura&x=h24

而且一旦我得到它,我必须解析它。 获取文件时出现问题,因为当我点击上一个链接时,我可以将它下载到我的电脑上,但我不知道如何使用Spring ...你能给我我提示吗?

更新:我没有任何代码,但我想这一定是类似于下面的代码的东西:

URL stockURL = new URL("http://example.com/stock.csv"); BufferedReader in = new BufferedReader(new InputStreamReader(stockUrl.openStream())); CSVReader reader = new CSVReader(in);

但问题是,我的网址是不完全的.csv 。当我把URL放在浏览器中时,它看起来像是一个重定向。

非常感谢你。

+1

可能需要打开一个HTTP连接,然后从缓冲区读入文件。 – SnakeDoc

+0

你可以添加你的代码吗? – sgrillon

+0

补充....事情是,URL不是直接的CSV,所以我不知道它会做这项工作。 – cjbs

回答

0

谢谢大家的意见。即使URL没有CSV扩展名,我也尝试了下面的代码(在Java中,不是Spring),但它的工作原理!

URL stockURL = new URL("http://www.aemet.es/es/eltiempo/observacion/ultimosdatos_6172O_datos-horarios.csv?k=and&l=6172O&datos=det&w=0&f=temperatura&x=h24"); 
    BufferedReader in = new BufferedReader(new InputStreamReader(stockURL.openStream())); 
    //CSVReader reader = new CSVReader(in); 

    String line; 
    while((line = in.readLine()) != null){ 
     System.out.println(line); 

    } 

所以,我猜测使用Spring会非常相似得到文件,所以非常感谢大家!

+1

即使您有一个.jpg文件,扩展名也无所谓。同样适用于服务器可能返回的内容类型:您决定如何处理来自服务器的字节 – Marged

相关问题