为什么这个java链接检查器代码不能编译?
我已经在SO上看到了这个问题。如果有更多这样的问题,我错过了,我道歉 我们需要以一种非常简单且可编写脚本的方式找到断开的链接,这样我们就可以记录断开的链接。我发现了一个用java编写的代码,可以完全满足我的需要,我的基础知识让我可以编译它,但每次我都会出错。我想这里也许有人能告诉我为什么代码不能编译 代码如下:为什么这个java链接检查器代码不能编译?,java,hyperlink,broken-links,Java,Hyperlink,Broken Links,我已经在SO上看到了这个问题。如果有更多这样的问题,我错过了,我道歉 我们需要以一种非常简单且可编写脚本的方式找到断开的链接,这样我们就可以记录断开的链接。我发现了一个用java编写的代码,可以完全满足我的需要,我的基础知识让我可以编译它,但每次我都会出错。我想这里也许有人能告诉我为什么代码不能编译 代码如下: import java.net.HttpURLConnection; import java.net.URL; class links { private static boolean
import java.net.HttpURLConnection;
import java.net.URL;
class links
{
private static boolean isLive(String link) {
HttpURLConnection urlConnection = null;
try {
URL url = new URL(link);
urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("HEAD");
urlConnection.connect();
String redirectLink = urlConnection.getHeaderField("Location");
if (redirectLink != null && !url.equals(redirectLink)) {
return isLive(redirectLink);
} else {
return urlConnection.getResponseCode() == HttpURLConnection.HTTP_OK;
}
} catch (Exception e) {
return false;
} finally {
if (urlConnection != null) {
urlConnection.disconnect();
}
}
}
public static void main(String[] args) {
System.out.println(isLive("http://www.fakelink.net"));
}
}
谢谢你的回答。我把编译的代码放在这里,以备将来参考。代码似乎是正确的。可能您尚未导入所需的软件包。如果您可以发布您收到的编译器错误,这将有所帮助。代码似乎正确。可能您尚未导入所需的软件包。如果您可以发布您收到的编译器错误,这将有所帮助。您需要导入正确的软件包。在这种情况下,您应该在文件顶部显示以下内容:
import java.net.HttpURLConnection;
import java.net.URL;
我还收到关于以下代码段的编译器警告:
&& !url.equals(redirectLink)
它试图将url(一个url)等同于重定向链接(一个字符串)。在Java中,当发生这种情况时,它会自动比较字符串值,而toString实际上给出了您想要的内容。更准确地说,在作者代码中,我将上述代码更改为:
&& !url.toExternalForm().equals(redirectLink)
注意:在netbeans中,您只需右键单击并选择“修复导入”选项(或按Ctrl+Shift+I),它将尝试查找您当前使用的正确软件包并自动插入导入语句。您需要导入正确的软件包。在这种情况下,您应该在文件顶部显示以下内容:
import java.net.HttpURLConnection;
import java.net.URL;
我还收到关于以下代码段的编译器警告:
&& !url.equals(redirectLink)
它试图将url(一个url)等同于重定向链接(一个字符串)。在Java中,当发生这种情况时,它会自动比较字符串值,而toString实际上给出了您想要的内容。更准确地说,在作者代码中,我将上述代码更改为:
&& !url.toExternalForm().equals(redirectLink)
注意:在netbeans中,您只需右键单击并选择“修复导入”选项(或按Ctrl+Shift+I),它将尝试查找您当前使用的正确软件包并自动插入导入语句。非常感谢。我一大早就去做。谢谢,非常感谢。我一大早就去做。谢谢。投票支持用正确的解决方案更新代码。投票支持用正确的解决方案更新代码。