如何在Java中使用cURL?
我在java中是一个新手,并想在Java中使用curl。 我的问题是java中内置的curl,或者我必须从任何第三方源安装Java以使用它。 如果是的话,如何在java中安装curl。 我一直在googlesearch了很长时间,但没有find任何帮助。 希望任何人都可以帮助我。
提前致谢。
您可以使用java.net.URL
和/或java.net.URLConnection
。
URL url = new URL("http://stackoverflow.com"); try (BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8"))) { for (String line; (line = reader.readLine()) != null;) { System.out.println(line); } }
另请参阅Oracle关于此主题的简单教程 。 但是有点冗长。 为了最终减less冗长的代码,您可以考虑改为使用Apache HttpClient 。
顺便说一句:如果你的下一个问题是“如何处理HTML结果?”,那么答案是“ 使用HTMLparsing器 。 不,不要使用正则expression式 ”。
也可以看看:
- 使用java.net.URLConnection来触发和处理HTTP请求
- 领先的Java HTMLparsing器有什么优点和缺点?
有人已经提到过HttpURLConnection , URL和URLConnection 。 如果你需要curl库提供的所有控件和额外的function(还有更多),我推荐Apache的httpclient 。
运行时对象允许你从Java执行外部命令行应用程序,因此允许你使用cURL,但是其他的答案表明可能有更好的方法来做你正在做的事情。 如果你想要做的只是下载一个文件的URL对象将工作得很好。
使用标准的java库,我build议看看HttpUrlConnection类http://java.sun.com/javase/6/docs/api/java/net/HttpURLConnection.html
它可以处理大部分curl可以用来build立连接的function。 你对stream的做法取决于你。
Curl是一个非Java程序,必须在Java程序之外提供。
您可以使用Jakarta Commons Net轻松获得大部分function,除非您需要某些特定的function(如“简历传输”)(这是您自己编写的单调乏味)