java - 在 Java 中读取 URL
问题描述
我对这个程序的目标是提取网站的内容并将其输出到控制台。但是,每次运行此代码时都会引发异常。我想知道我做错了什么,是否有人能指出我正确的方向。提前谢谢你!
public class twikiripper {
public static URL url;
public static void main(String[] args) {
BufferedReader br = null;
try{
URL url = new URL("http://www.google.com");
}catch(MalformedURLException ex){}
try {
url.openConnection();
br = new BufferedReader(new InputStreamReader(url.openStream()));
String line;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
sb.append(System.lineSeparator());
}
System.out.println(sb);
}catch(Exception e){
System.out.println("Exception: "+e.toString());
}
}
我的代码在上面。我想知道,为什么我总是输出 Exception: java.lang.NullPointerException ?我似乎总是抛出这个异常。我以为我做的一切都是对的。
我要做的是显示网站的输出代码,仅此而已。请帮忙 !
解决方案
below code will fullfill your requirement --
package com.subham.testing;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
public class Test13 {
public static URL url;
public static void main(String[] args) {
BufferedReader br = null;
try {
url = new URL("http://www.google.com");
} catch (MalformedURLException ex) {
System.out.println("came exception");
}
try {
url.openConnection();
br = new BufferedReader(new InputStreamReader(url.openStream()));
String line;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
sb.append(System.lineSeparator());
}
System.out.println(sb);
} catch (Exception e) {
System.out.println("Exception: " + e.toString());
}
}
}
You were creating new url object in first try block so in second try block was getting null as it was just decleared but not initialized.
推荐阅读
- javascript - 将 jQuery 转换为纯 JavaScript 以获得粘性 YouTube 视频
- reactjs - 可以更新 mdx 中的元值
- kubernetes - 在 GKE 中对来自 Kubernetes 的“[manifests prod]”403 错误进行故障排除
- python - (Tkinter)在打包之前获取框架的高度
- node.js - Nodejs 的 Websocket 池模块
- python - 尽管使用在其他地方工作的相同代码,但文本未呈现
- python - 将 R、B、G 数组列表转换为颜色名称
- javascript - 属性未添加到对象
- sql - 从 sql 中的 json 类型中获取特定值
- c# - 是否可以将表名或函数名作为 SQLParameter 传递给 SQL 脚本?