从网络上下载文件的两种方式
Delphi 编程,从网络上下载文件,我一般用 UrlDownloadToFile API函数,简单,实用。
function DownloadFile(const strURL, strDownFileName: string): Boolean;
begin try Result := UrlDownloadToFile(nil, PChar(strURL), PChar(strDownFileName), 0, nil) = 0; except Result := False; end;
end;
但是昨天,测试给我反映,有的客户那里,没有换成更改后的新的图片,还是老的图片。
一开始我还以为是权限的问题,没有目录读写权限造成的。
在客户的电脑上折腾了一番,依然没能找到问题所在。
没有办法,只好一步一步写日志输出。
竟然发现 UrlDownloadToFile 根本就没有从网络上将文件下载下来。使用的是缓存里面的文件。
还是老老实实用 IDHTTP 下载吧。
procedure DownloadFile(const strURL, strDownFileName:String);
var mmfs : TFileStream;
begin mmfs := TFileStream.Create(strDownFileName,fmCreate); tryIdHTTP.Get(strURL,mmfs); finallymmfs.Free;end;
end;
这个函数有个明显的缺点,就是不知道下载的状态,是成功了,还是失败了。这个就留作课后作业。大家自己想办法了。(当然还有个缺陷就是需要一个 IDHTTP 控件)
记录一下。提醒大家注意。
从网络上下载文件的两种方式相关推荐
- django + python上传文件的两种方式
突然心血来潮,研究了下django+python上传文件的两种方式. 第一:直接采用文件读写的方式上传 1. settings.py文件中设置文件的存放路径和文件读取路径 MEDIA_ROOT = o ...
- Android之从网络上获取图片的两种方式讲解:thread+handle和AsyncTask方式
从网络上获取图片是一个比较耗时的操作,放在主线程会导致阻塞主线程,响应超时,所以我们不能把它放在主线程里操作,必须放在一个子线程里,我打算采用两种方式去实现.1.采用thread去获取图片,获取到后通 ...
- springboot Java实现多文件的zip压缩操作 + 通过浏览器下载文件的两种方式
注只适配utf-8的场景,待完善! 压缩为zip文件 通过java程序输出文件 /*** 功能:压缩多个文件成一个zip文件* @param srcfile:源文件列表* @param zipfile ...
- angualr2 下载文件的两种方式
根据小编我目前的了解,angualr2中可以使用一下两种方式导出文件 第一种 export(){let url ="自己下载文件的路径";// var objectUrl = UR ...
- Android从网络上获取图片的两种方式
1,获得图片的bitmap格式 参见以前写的,这种方式是使用Url连接,位图工厂直接从连接解析 package cn.com.hh.http;import java.io.IOException; i ...
- LayUI upload上传组件上传文件的两种方式(手动上传、自动上传)
1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...
- WebUploader 上传文件的两种方式(手动上传,自动上传)
1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...
- vue前端实现上传文件的两种方式
1.使用form表单的形式 第一种方式就是使用FormData的方式进行上传 html代码: <el-form :model="upform" :rules="up ...
- flask中使用FileField上传文件的两种方式+前端页面上传文件(flask三种上传文件方式)
文章目录 上传文件方式一: 1.index.html文件: 2.主文件main.py: 上传文件方式二: 1.index2.html文件: 2.main.py文件: 上传文件方式三: 1.index3 ...
最新文章
- 200 万年薪,却招不到清华姚班毕业生!能上姚班的都是什么人?
- 黑科技揭秘 | 阿里云“天空物联网”连接范围如何达到700平方公里
- jquery extend函数
- ReactNative生成android平台的bundle文件命令
- 深入理解分布式技术 - ServiceMesh 服务网格
- 《STL源码剖析》--知识点
- c#图片上绘制半透明矩形
- 阿里技术 2019 年度热文 Top10 出炉,你错过哪些?
- 每日三道前端面试题--vue 第二弹
- 开发者需要了解的nodejs中require的机制
- MySQL字符串拼接(函数)
- 常用公差配合表图_机械密封零件的公差配合与技术要求
- IOS开发之——音乐播放器-功能封装(03)
- iptables端口复用
- python文件名和类名需要一致吗_Python:类名与文件/模块名相同会导致继承问题?...
- uniapp 如何生成二维码
- Mac软件安装包和问题解决方案
- 铁电存储器这样应对充电桩存储痛点
- 2022年金属非金属矿山(地下矿山)安全管理人员特种作业证考试题库模拟考试平台操作
- P2P在IPTV中解决数据服务器传输瓶颈
热门文章
- ipfs分布式存储能否拯救互联网杀熟
- java定义一个方法计算三角形,长方形,圆形面积和周长
- [数学理论]最大熵模型
- TextPad等编译器找不到或无法加载主类
- 计算机象棋思维原理,这些象棋原理只有象棋大师才懂,几分钟就能学会
- 解决Could not find method xxx for arguments问题
- TTL肖特基触发器是什么?
- 计算机python教程_Python 如何入门?附Python教程下载
- topm java cpu3.3_快讯:TOPM 3-0 XQ,TOPM强势压迫,势如破竹喜获三连胜
- 作为老板,林纳斯·托瓦兹有多糟糕?