`
accpxudajian
  • 浏览: 458103 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

URL读取服务器端文档

    博客分类:
  • Java
阅读更多
>>URL读取服务器端文档实例
//URLConnection 类是所有在应用程序和 URL 之间创建通信链路的类的抽象超类。
//URLConnection 在获取 Web 服务器上的文档方面特别有用,但也可用于连接由 URL 标识的任何资源。
//演示如何用 URLConnection 来从服务器请求文档的样本代码。
import java.io.*;
import java.net.*;
public class URLClient
{
private URLConnection conn ;  //声明URL连接对象
//构造
public URLClient()
{}
//根据URL返回URL的文档内容
public String getDocument(String urlString)
{
  //实例化StrignBuffer对象,用于接收文档内容
  StringBuffer document = new StringBuffer();

  try{
   URL url = new URL(urlString); //根据URL地址,实例化URL对象
   conn = url.openConnection();  //打开URL对象的连接,返回URLConnection对象
   //根据URL连接对象,创建缓冲流读取器
   BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
   String line = null;
   //如果读取的内容不为空,则继续读取
   while((line = reader.readLine())!=null)
   {
    document.append(line+"\n");
   }
   //关闭缓冲流对象
   reader.close();
  
  }
  catch(Exception e){
   e.printStackTrace();
  }
  return document.toString();
}
public static void main(String[] args)
{
   URLClient client = new URLClient();
   String baidu = client.getDocument("http://www.baidu.com");
   System.out.println(baidu);
}
}



>>牛人解说URL对象的工作原理
服务器请求一个文档第 5 页(共6 页)getDocumentAt() 方法处理获取 Web 上的文档的实际工作:
public String getDocumentAt(String urlString) {    StringBuffer document = new StringBuffer();    try {        URL url = new URL(urlString);        URLConnection conn = url.openConnection();        BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));        String line = null;        while ((line = reader.readLine()) != null)       document.append(line + "\n");        reader.close();    } catch (MalformedURLException e) {        System.out.println("Unable to connect to URL: " + urlString);    } catch (IOException e) {        System.out.println("IOException when connecting to URL: " + urlString);    }    return document.toString();}
getDocumentAt() 方法有一个 String 参数,该参数包含我们想获取的文档的 URL。我们在开始时创建一个 StringBuffer 来保存文档的行。然后我们用我们传进去的 urlString 创建一个新 URL。接着创建一个 URLConnection 并打开它:
URLConnection conn = url.openConnection();
一旦有了一个 URLConnection,我们就获取它的 InputStream 并包装进 InputStreamReader,然后我们又把 InputStreamReader 包装进 BufferedReader 以使我们能够读取想从服务器上获取的文档的行。在 Java 代码中处理套接字时,我们将经常使用这种包装技术,但我们不会总是详细讨论它。在我们继续往前讲之前,您应该熟悉它:
BufferedReader reader =     new BufferedReader(new InputStreamReader(conn.getInputStream()));
有了 BufferedReader,就使得我们能够容易地读取文档内容。我们在 while 循环中调用 reader 上的 readLine()
String line = null;while ((line = reader.readLine()) != null)    document.append(line + "\n");
readLine() 的调用将直至碰到一个从 InputStream 传入的行终止符(例如换行符)时才阻塞。如果没碰到,它将继续等待。只有当连接被关闭时,它才会返回 null。在这个案例中,一旦我们获取一个行(line),我们就把它连同一个换行符一起附加(append)到名为 documentStringBuffer 上。这保留了服务器端上读取的文档的格式。
我们在读完行之后关闭 BufferedReader
reader.close();
如果提供给 URL 构造器的 urlString 是无效的,那么将抛出 MalformedURLException。如果发生了别的错误,例如当从连接上获取 InputStream 时,那么将抛出 IOException

 

分享到:
评论

相关推荐

    javascript读取服务器端XML文件借鉴.pdf

    在JavaScript中,读取服务器端的XML文件通常涉及到AJAX(Asynchronous JavaScript and XML)技术,尤其是现代浏览器中广泛使用的XMLHttpRequest对象或其更高级的版本——fetch API。在本例中,我们将探讨如何使用...

    javascript读取服务器端XML文件收集.pdf

    在JavaScript中,与服务器端交互并读取XML文件通常涉及到Ajax技术,特别是使用XMLHttpRequest对象。这个过程可以分为几个步骤,下面将详细解释如何实现。 首先,你需要创建一个XMLHttpRequest对象,这是JavaScript...

    pdf.js读取pdf文档

    开发者可以通过调用`PDFJS.getDocument(url)`方法来加载PDF文档,然后使用`promise`机制处理加载完成后的回调,获取PDF文档的信息。一旦文档加载完成,可以逐页渲染到网页上。 2. HTML5 Canvas技术: PDF.js通常...

    利用AJAX修改服务器端XML并在客户端访问XML

    在服务器端,我们通常使用编程语言如C#或ASP.NET来处理XML文件,包括读取、写入和修改XML文档。 在AJAX中,XMLHttpRequest对象是核心,它负责在后台与服务器通信。当用户触发一个事件(例如点击按钮)时,...

    网页读取xml文档并分页

    5. **优化性能**:为了避免一次性加载所有数据导致性能问题,可以考虑使用XPath或XSLT进行数据筛选,或者在服务器端预先处理分页。 总之,Web环境下读取XML文档并分页显示数据涉及前端与后端的协同工作。前端负责...

    react-PreactServerRenderer服务器端渲染preact组件

    在服务器端,这个过程可能涉及到路由处理,根据URL决定渲染哪个组件。之后,服务器将这个HTML字符串返回给客户端,客户端可以接收到完整的HTML文档,再通过hydrate方法将服务器端生成的静态结构转化为交互式的Preact...

    asp.net WEB和窗体读取ppt文档程序源码

    ASP.NET是一种基于.NET Framework的服务器端编程模型,用于构建动态Web应用程序和Web服务。这个程序源码示例专注于在ASP.NET环境中读取PowerPoint(PPT)文档,这对于那些需要在网页上展示或处理PPT内容的应用来说...

    PHPWord中文手册_Office_word_读取word_php_

    在IT行业中,PHP是一种广泛应用的服务器端脚本语言,尤其在网页开发中占有重要地位。当我们需要处理Microsoft Word文档时,PHPWord库提供了一个强大的工具,使得开发者可以用PHP来读取、修改和创建Word文件。这个...

    flash读取xml文档

    在服务器端设置适当的Cross-Origin Resource Sharing (CORS)策略或使用crossdomain.xml文件。 - 错误处理:加载或解析XML时可能会遇到错误,所以需要添加适当的错误处理机制,如监听ErrorEvent.ERROR事件。 六、...

    安卓文件下载上传解压相关-android录音-上传-下载-客服端jsp服务器端.rar

    这篇文档将深入探讨在安卓平台上的文件下载、上传和解压操作,以及如何与JSP服务器端进行交互。首先,我们需要理解安卓应用是如何处理录音、文件上传和下载的,然后我们将探讨服务器端的JSP技术及其在文件管理中的...

    Android连接服务器端

    ### Android连接服务器端的数据交互方法 #### 摘要与背景 随着移动互联网技术的快速发展,特别是3G网络的普及,智能手机已经不仅仅是传统的通讯工具,更成为了接入互联网的重要终端之一。在这种背景下,如何让...

    jQuery读取json数据

    在这个例子中,`url`是服务器端接口的地址,`type`是请求类型,`dataType`指定我们期望服务器返回的数据类型为JSON。`success`回调函数会在请求成功并接收到数据时被调用,`data`参数就是解析后的JSON对象。`error`...

    服务器端用可控js跨域访问

    同源策略(Same-origin policy)是浏览器的一个安全机制,它限制了来自不同源的脚本对另一来源文档或资源的读取和修改。源被定义为协议、域名和端口的组合。例如,`https://www.example.com` 和 `...

    上传图片到服务器端,有缩略图,有水印

    这个过程涉及到图像处理、网络传输和服务器端编程等多个技术领域。以下是对这个主题的详细说明: 1. **图片上传**:图片上传通常通过HTTP或HTTPS协议进行,客户端(如网页或APP)通过表单提交或者API接口发送图片...

    java读取PDF显示于浏览器

    5. **安全性考虑**:尽管通过Java服务器端处理PDF可以增加安全性,防止直接下载带来的潜在风险,但仍然需要注意其他安全问题。例如,确保PDF文件来源可靠,防止XSS(跨站脚本攻击)和CSRF(跨站请求伪造)等Web攻击...

    Apache HTTP服务器 2.0版本文档

    11. **SSI(服务器端包含)**:服务器端包含允许动态地将HTML文件与其他文件或命令结合,简化动态内容的生成。 12. **URL重写规则**:mod_rewrite模块提供了强大的规则引擎,可以改变请求的URL,这对于SEO优化和...

    (WebOffice)java端在线打开编辑文档

    - **文件操作**:与服务器端的文件系统交互,负责文件的读取、写入和存储。 3. **Java端集成** - **添加依赖**:在Java项目中引入WebOffice的库文件,通常是通过Maven或Gradle等构建工具进行管理。 - **配置...

    word文档前端预览

    服务器端的转换工具必须能够理解并映射Word的样式到HTML样式,包括字体、字号、颜色、列表样式等。前端也需要有能力呈现这些样式。 5. **安全性与兼容性**:在实现预览功能时,需要注意跨域问题和浏览器兼容性。...

Global site tag (gtag.js) - Google Analytics