Java 如何将文件保存到RESTURL请求中下载的特定文件夹?

Java 如何将文件保存到RESTURL请求中下载的特定文件夹?,java,file,download,yahoo-finance,Java,File,Download,Yahoo Finance,我正在使用雅虎的URL请求功能下载股票数据。我发现一个java应用程序每5秒下载一次数据我不知道在使用我在应用程序中使用的基本代码时,如何将股票数据下载到计算机中的某个文件夹。还有其他帖子介绍如何将yahoo URL请求数据保存到某个位置,但它没有使用与我使用的相同的代码格式。所有的想法,源代码和链接解释我应该如何做这将是非常有帮助的。谢谢你的帮助 我的代码: import java.awt.Desktop; import java.net.URL; public class Download

我正在使用雅虎的URL请求功能下载股票数据。我发现一个java应用程序每5秒下载一次数据我不知道在使用我在应用程序中使用的基本代码时,如何将股票数据下载到计算机中的某个文件夹。还有其他帖子介绍如何将yahoo URL请求数据保存到某个位置,但它没有使用与我使用的相同的代码格式。所有的想法,源代码和链接解释我应该如何做这将是非常有帮助的。谢谢你的帮助

我的代码:

import java.awt.Desktop;
import java.net.URL;

public class Downloader {

    public static void main(String[] args) throws InterruptedException {
        for (int i = 0; i < 10; i++) {
            Thread.sleep(5000);
            try {
                Desktop.getDesktop()
                        .browse(new URL(
                                "http://finance.yahoo.com/d/quotes.csv?s=AAPL+GOOG+MSFT&f=nab")
                                .toURI());
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }
}
导入java.awt.Desktop;
导入java.net.URL;
公共类下载程序{
公共静态void main(字符串[]args)引发InterruptedException{
对于(int i=0;i<10;i++){
睡眠(5000);
试一试{
getDesktop()
.浏览(新网址)(
"http://finance.yahoo.com/d/quotes.csv?s=AAPL+GOOG+MSFT&f=nab”)
.toURI());
}捕获(例外e){
e、 printStackTrace();
}
}
}
}

您可以使用Java的IO功能,如果没有使用AWT桌面类的具体原因,您是否正在尝试编写GUI

请尝试以下示例代码:

URL yahooFinance = new URL("http://finance.yahoo.com/d/quotes.csv?s=AAPL+GOOG+MSFT&f=nab");
ReadableByteChannel channel = Channels.newChannel(yahooFinance.openStream());
FileOutputStream fos = new FileOutputStream("quotes.csv");
fos.getChannel().transferFrom(channel, 0, Long.MAX_VALUE);

您还可以使用org.apache.commons.io.FileUtils

java.net.URL yahooFinance = new java.net.URL("http://finance.yahoo.com/d/quotes.csv?s=AAPL+GOOG+MSFT&f=nab");
    File f = new File("quotes.csv");
    FileUtils.copyURLToFile(yahooFinance, f);