栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在文件下载中实现暂停/恢复

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在文件下载中实现暂停/恢复

好的问题已解决,这是我的其他想要实现暂停/恢复的用户的代码:

        if (outputFileCache.exists())        { connection.setAllowUserInteraction(true); connection.setRequestProperty("Range", "bytes=" + outputFileCache.length() + "-");        }        connection.setConnectTimeout(14000);        connection.setReadTimeout(20000);        connection.connect();        if (connection.getResponseCode() / 100 != 2) throw new Exception("Invalid response pre!");        else        { String connectionField = connection.getHeaderField("content-range"); if (connectionField != null) {     String[] connectionRanges = connectionField.substring("bytes=".length()).split("-");     downloadedSize = Long.valueOf(connectionRanges[0]); } if (connectionField == null && outputFileCache.exists())     outputFileCache.delete(); fileLength = connection.getContentLength() + downloadedSize; input = new BufferedInputStream(connection.getInputStream()); output = new RandomAccessFile(outputFileCache, "rw"); output.seek(downloadedSize); byte data[] = new byte[1024]; int count = 0; int __progress = 0; while ((count = input.read(data, 0, 1024)) != -1          && __progress != 100)  {     downloadedSize += count;     output.write(data, 0, count);     __progress = (int) ((downloadedSize * 100) / fileLength); } output.close(); input.close();       }


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/486780.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号