`
wanggeying
  • 浏览: 66575 次
  • 性别: Icon_minigender_2
  • 来自: 济南
社区版块
存档分类
最新评论

文件断点续传

    博客分类:
  • file
阅读更多

文件续传,参考了很多资料, 最后还是自己结合写了下
大致思路:
1、下载时,看原位置是否已存在文件,若存在文件,读取文件长度,
2、读取的文件长度为起点,从服务器下载的文件流中开始截取剩余的文件流
3、通过RandomAccessFile把剩余的文件流追加到已存在的文件中


伪代码如下:


//设置变量,初始化起始点
int beginIndex=0;
//判断文件是否存在

File file=new File(getFileName);    if(file.exists()) {  beginIndex=Integer.valueOf(String.valueOf(file.length()));//给变量复赋值
}
try {
//服务器上存放的文件流

InputStream randomFile = blobMessage.getInputStream();
//设置流的起点

randomFile.skip(beginIndex);
byte[] bytes = new byte[256]; 
int byteread = 0; 
//获取已存在文件,
 RandomAccessFile randomReceiveFile = new RandomAccessFile(getFileName, "rw");
//追加文件内容        

randomReceiveFile.seek(randomReceiveFile.length());//定位文件内容最后
while ((byteread = randomFile.read(bytes)) != -1) {  //把流写入文件
        randomReceiveFile.write(bytes, 0, byteread);

randomFile.close();
randomReceiveFile.close();

 目前测试的没问题,实际应用中,是否存在问题,待更新完善

分享到:
评论

相关推荐

    实现安卓文件断点续传

    在安卓平台上实现文件的断点续传...源码文件“文件断点续传源码”应该包含了具体的实现细节,如文件管理、网络请求、线程同步等模块的代码,供开发者参考和学习。在实际开发中,可以根据项目需求进行适当的调整和优化。

    asp.net大型文件断点续传实例

    下面我们将详细探讨ASP.NET实现大型文件断点续传的原理和步骤。 首先,我们需要理解断点续传的基本原理。它主要依赖于客户端和服务器之间的状态保持。当文件传输开始时,客户端保存已下载或上传的部分文件位置,并...

    C#+MVC ajax+大文件断点续传

    在IT行业中,大文件断点续传是一种常见且重要的技术,尤其在文件上传场景下,它极大地提高了用户体验和网络效率。本示例是基于C#编程语言,结合ASP.NET MVC框架以及AJAX技术实现的。这里我们将深入探讨这些知识点。 ...

    大文件断点续传功能

    之前也试过百度的webuploader,但是效果并不理想(想研究的也可以试试),然后一直找,找了很久,直到找到这个后,才基本满足功能所需,可以实现大文件断点续传的需求。大文件断点续传的优势主要体现在:有时候突然...

    C#超大文件断点续传

    本篇文章将详细介绍两种在C#中实现超大文件断点续传的方法:使用HttpWebRequest和System.Net.WebClient。 首先,我们来看使用HttpWebRequest的方式。HttpWebRequest是.NET Framework提供的一个HTTP协议客户端编程...

    Android大文件断点续传

    综上所述,Android大文件断点续传涉及到了网络编程、文件操作、错误处理等多个方面,需要开发者对Android系统和网络通信有深入的理解。实现这样的功能需要耐心和细心,但一旦完成,将极大地提升应用的用户体验。在...

    Android多文件断点续传

    对于多文件断点续传,我们需要为每个文件维护一个独立的任务,并且确保这些任务可以并行执行,但又不会相互干扰。这可能涉及到并发控制和同步策略,例如使用`Semaphore`或`CountDownLatch`来协调多个任务。 在存储...

    文件断点续传及下载(压缩文件自动解压)

    "文件断点续传及下载(压缩文件自动解压)"这一主题涵盖了几个关键的技术点,包括断点续传、文件下载以及自动解压缩,这些都是提高用户体验和效率的重要技术。 断点续传(Resumable Transfer)是一种允许用户在网络...

    spring boot实现大文件断点续传

    在这个场景下,结合Google的断点续传框架,我们可以实现大文件的高效、安全上传,即使在上传过程中网络中断,也能从上次中断的位置继续,而无需重新开始。以下是对这个知识点的详细解释。 首先,了解断点续传的基本...

    http超大文件断点续传服务器

    "http超大文件断点续传服务器"的实现是针对大型文件上传需求的一种解决方案,它解决了传统HTTP上传方式可能遇到的问题,如文件过大导致的传输失败、网络中断后需重新上传等。下面我们将深入探讨这一技术。 首先,...

    Android 文件断点续传源码

    Android 文件断点续传源码可以下在直接用的

    网络文件断点续传源程序

    网络文件断点续传技术是互联网上传输大文件时常用的一种功能,它允许用户在中断传输后从上次中断的位置继续,极大地提高了文件下载或上传的效率和成功率。本程序源代码详细展示了如何实现这一功能,尤其关注了多线程...

    JAVA大文件断点续传示例

    在Java编程中,大文件断点续传是一项重要的技术,特别是在网络不稳定或上传过程中可能出现中断的情况下。本示例主要探讨如何实现这样的功能,确保大文件能够分块上传并在中断后从上次停止的地方继续。 首先,我们...

    前端使用 node fs模块实现文件断点续传 (下载续传)

    前端直接引用nodejs fs 模块 实现文件下载续传、并没有想象中的那么难...

    局域网文件断点续传

    局域网文件断点续传技术是网络传输领域中一种高效、便捷的文件传输解决方案,尤其是在大文件传输或网络环境不稳定的情况下,它的重要性尤为突出。断点续传允许用户在中断传输后从上次中断的位置继续,而不是从头开始...

    java大文件断点续传

    Java大文件断点续传是一种优化的文件传输技术,它允许在文件传输中断后从上次停止的地方继续,而不是从头开始。这种技术尤其适用于网络不稳定或文件尺寸巨大的情况,能够显著提升用户满意度和效率。在本文中,我们将...

    php+html+js+css实现文件断点续传

    这个项目是关于如何使用PHP、HTML、JavaScript(JS)和CSS来实现一个纯前端的多文件断点续传功能。下面我们将深入探讨这些技术及其在断点续传中的应用。 首先,`PHP`是服务器端脚本语言,主要负责处理文件的上传、...

Global site tag (gtag.js) - Google Analytics