资讯专栏INFORMATION COLUMN

获取RSS源xml文件的四种方法

Turbo / 1226人阅读

摘要:但注意需指定编码格式,否则会乱码。获取指定的资源。获取指定的资源返回一个对象,它表示到所引用的远程对象的连接。获取的输入流,并输出打开到此的连接并返回一个用于从该连接读入的。

最近在看RSS相关的内容,想用Java实现一个RSS订阅的功能,代码还是比较简单的,只需要度渠道xml后使用其他格式解析即可。但注意需指定编码格式,否则会乱码。

package com.cyz;

import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.net.URLConnection;

public class TestURL {

    public static void main(String[] args) throws IOException {
//        test4();
//        test3();
        test2();
//        test();
    }

    /**
     * 获取URL指定的资源。
     * 
     * @throws IOException
     */
    public static void test4() throws IOException {
        URL url = new URL("http://rss.mydrivers.com/rss.aspx?Tid=1");
        // 获得此 URL 的内容。
        Object obj = url.getContent();
        System.out.println(obj.getClass().getName());
    }

    /**
     * 获取URL指定的资源
     * 
     * @throws IOException
     */
    public static void test3() throws IOException {
        URL url = new URL("http://rss.mydrivers.com/rss.aspx?Tid=1");
        // 返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。
        URLConnection uc = url.openConnection();
        // 打开的连接读取的输入流。
        InputStream in = uc.getInputStream();
        int c;
        while ((c = in.read()) != -1)
            System.out.print(c);
        in.close();
    }

    /**
     * 读取URL指定的网页内容
     * 
     * @throws IOException
     */
    public static void test2() throws IOException {
        URL url = new URL("http://rss.mydrivers.com/rss.aspx?Tid=1");
        // 打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。
        Reader reader = new InputStreamReader(new BufferedInputStream(url.openStream()), "UTF-8");
        int c;
        while ((c = reader.read()) != -1) {
            System.out.print((char) c);
        }
        reader.close();
    }

    /**
     * 获取URL的输入流,并输出
     * 
     * @throws IOException
     */
    public static void test() throws IOException {
        URL url = new URL("http://rss.mydrivers.com/rss.aspx?Tid=1");
        // 打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。
        InputStream in = url.openStream();
        int c;
        while ((c = in.read()) != -1)
            System.out.print(c);
        in.close();
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/66437.html

相关文章

  • 结合Spring发送邮件四种正确姿势,你知道几种?

    摘要:我拿网易邮箱账号举例子,那么我们如何才能让你的邮箱账号可以利用第三方发送邮件这里的第三方就是我们即将编写的程序。 一 前言 测试所使用的环境 测试使用的环境是企业主流的SSM 框架即 SpringMVC+Spring+Mybatis。为了节省时间,我直接使用的是我上次的SSM项目中整合Echarts开发该项目已经搭建完成的SSM环境。 标题说的四种姿势指的是哪四种姿势? 发送text...

    doodlewind 评论0 收藏0
  • Spring Boot 2.x(四):整合Mybatis四种方式

    摘要:前言目前的大环境下,使用作为持久层框架还是占了绝大多数的,下面我们来说一下使用的几种姿势。测试测试的程序与之前的一致,我们直接访问,可以看到成功的结果姿势三使用的姿势和可以与上面两种方式进行结合,。。。接口的实现是通过。然后我们将的改为。 前言 目前的大环境下,使用Mybatis作为持久层框架还是占了绝大多数的,下面我们来说一下使用Mybatis的几种姿势。 姿势一:零配置注解开发 第...

    felix0913 评论0 收藏0
  • MyBatis 中 @Param 注解四种使用场景,最后一种经常被人忽略!

    摘要:如果我们在动态中用到了参数作为判断条件,那么也是一定要加注解的,例如如下方法定义出来的如下这种情况,即使只有一个参数,也需要添加注解,而这种情况却经常被人忽略好了,不知道大家有没有到呢有问题欢迎留言讨论。 有一些小伙伴觉得 MyBatis 只有方法中存在多个参数的时候,才需要添加 @Param 注解,其实这个理解是不准确的。即使 MyBatis 方法只有一个参数,也可能会用到 @Par...

    BothEyes1993 评论0 收藏0
  • JAX-RS 2.0 中 REST 四种服务类型

    摘要:当不存在子类,也不存在子类时,规范中定义,在这种情况下,为服务动态生成一个名为的实例,并自动探测匹配资源。其中是中的基类,它继承于情况二当不存在子类,但是存在子类时。以上就是规范中定义的四种服务的方式。 最近在学习 jersey 框架。他是 目前比较流行的 基于 JAX-RS 2.0 规范实现的 RESTful 框架。 我是跟着 《Java RESTful Web Service 实...

    bbbbbb 评论0 收藏0
  • 放弃免费Inoreader 自建RSS阅读器—Tiny Tiny RSS和FreshRSS

    摘要:阅读器现在越来越成为一个小众的产品了。尤其是坚持几年的从年开始就要收费了,是时候转投自建阅读器了。作为免费的阅读器,虽然广告很多,但是一直以来不限制订阅数,所以我一直把它当成阅读器首选。RSS阅读器现在越来越成为一个小众的产品了。之前我在五款优秀的RSS阅读器推荐中介绍的InoReader、Feedly、Digg Reader等要么就是开始收费,要么就是半死不活了。尤其是坚持几年的Inore...

    番茄西红柿 评论0 收藏2637

发表评论

0条评论

最新活动
阅读需要支付1元查看
<