下载服务器端的图片和下载excel
#region 下载
/// <summary>
/// 下载资源
/// </summary>
public void Download()
{
SaveFileDialog open = new SaveFileDialog();
open.Filter = "*.xls;*.xlsx;*.xl;*.xlsn|*.xls;*.xl;*.xlsn;*.xlsx"; //保存图像类型
string path = "http://192.168.3.63:9999/UpLoad/Default/案例.xlsx";
Uri uri = new Uri(path);
open.FileName = uri.Segments[uri.Segments.Length - ];
DialogResult result = open.ShowDialog();
if (!string.IsNullOrWhiteSpace(open.FileName) && result == DialogResult.OK)
{
if (DownloadImage("http://192.168.3.63:9999/UpLoad/Default/案例.xlsx", open.FileName))
{
MessageBox.Show("下载成功!");
}
}
}
/// <summary>
/// 下载服务器文件至客户端
/// </summary>
/// <param name="urlString">被下载的文件地址,绝对路径</param>
/// <param name="saveDir">另存放的目录</param>
/// <returns>b</returns>
public bool DownloadImage(string urlString, string saveDir)
{
WebClient client = new WebClient();
FileStream fsStr = null;
HttpWebResponse res = null;
try
{
int n = urlString.LastIndexOf("/");
string fileName = urlString.Substring(n + , urlString.Length - n - ); //直接下载到桌面
//client.DownloadFile(urlString, fileName); //下载到指定目录
Stream stream = client.OpenRead(urlString);
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(urlString);
res = (HttpWebResponse)req.GetResponse();
long len = res.ContentLength; BinaryReader r = new BinaryReader(stream);
byte[] byteS = r.ReadBytes((int)len); fsStr = new FileStream(saveDir, FileMode.OpenOrCreate, FileAccess.Write);
fsStr.Write(byteS, , (int)len);
fsStr.Close();
res.Close();
stream.Close();
return true;
}
catch (Exception err)
{
return false;
}
finally
{
if (fsStr != null)
{
fsStr.Close();
fsStr.Dispose();
}
if (res != null)
{
res.Close();
}
}
}
#endregion
#region 下载
/// <summary>
/// 下载图片
/// </summary>
/// <param name="path">下载路径</param>
/// <param name="save">保存路径</param>
//private void DownloadImage(string path, string save)
//{
// Stream stream = null;
// if (path != null)
// {
// Uri uri = new Uri(path);
// try
// { // if ("http".Equals(uri.Scheme, StringComparison.CurrentCultureIgnoreCase))
// {
// //如果是HTTP下载文件
// WebClient wc = new WebClient();
// stream = new MemoryStream(wc.DownloadData(uri));
// }
// else if ("file".Equals(uri.Scheme, StringComparison.CurrentCultureIgnoreCase))
// {
// stream = new FileStream(@path, FileMode.Open, FileAccess.Read);
// } // //Image image = new Bitmap(stream);
// //mage.Save(save);
// MessageBox.Show("保存成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
// }
// catch (Exception e)
// {
// System.Windows.MessageBox.Show(e.Message);
// }
// }
//}
#endregion
下载服务器端的图片和下载excel的更多相关文章
- android 图片网络下载github开源框架之Universal-Image-Loader
最近在做妙趣剪纸项目,剪纸应用项目链接.发扬传统文化,大家多多关注. 需要自己搭建服务器,我用的是新浪sae,简直秒杀京东云几条街,把图片放在网上下载,但是图片经常下载要遇到很多问题,包括oom等.所 ...
- thinkphp3.2.3 excel导出,下载文件,包含图片
关于导出后出错的问题 https://segmentfault.com/q/1010000005330214 https://blog.csdn.net/ohmygirl/article/detail ...
- C++根据图片url下载图片
需要使用到URLDownloadToFile()函数,该函数在头文件<urlmon.h>中声明. URLDownloadToFile()函数的定义如下: HRESULT URLDownlo ...
- Unity3D图片的下载及保存
Unity3D图片的下载及保存 分类: Unity3D 2013-06-24 15:03 3609人阅读 评论(2) 收藏 举报 Unity3D图片URL 代码如下: [csharp] view pl ...
- [C#基础实例]指定地址解析图片并下载
需求:查找页面图片并下载至本地: 实现: 首先:读取通过网络html内容,并用正则表达式查找图片地下. 其次:使用WebRequest.Create创建图片请求. 最后:把获取图片网络流数据通过Fil ...
- PhoneGap奇怪的现象:File FileTransfer download, 手机相册检测不到下载下来的图片(解决)
我有个从服务器下载相片的功能在使用 File FileTransfer download api时,碰到了很奇怪的现象:图片已经从服务器里下载了,手机文件夹里也可以看到下载过来的图片,但是我的手机相册 ...
- DELL服务器引导光盘图片及下载链接
DELL服务器引导光盘图片及下载链接 所有的下载地址均是ftp开头的,下载时,请 拷贝下载地址,然后放到浏览器的地址栏进行下载! 各个下载地址汇总: http://search.dell.com/re ...
- php将抓取的图片链接下载到本地
备注: fclose这一步操作完成之后如果返回值是空表示下载成功,否则会返回1或者其他错误提示 这个步骤测试的时候实在yii2框架的基础上执行的,下载到的图片实在frontend目录下的web目录下( ...
- 【图文详解】python爬虫实战——5分钟做个图片自动下载器
python爬虫实战——图片自动下载器 之前介绍了那么多基本知识[Python爬虫]入门知识,(没看的先去看!!)大家也估计手痒了.想要实际做个小东西来看看,毕竟: talk is cheap sho ...
随机推荐
- SqlServer:传递超长字符串参数时,参数被自动换行。
declare @ids nvarchar(max); set @ids=N'5936593066,5936556893,59366 00375,5936594808,59 36624757,5936 ...
- Java堆内存
Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象. 在 Java 中,堆被划分成两个不同的区域:新生代 ( Young ).老年代 ( Old ).新生代 ( Yo ...
- C++Primer 第十章
//1.标准库算法不仅可以应用于容器,还可以应用于内置数组,指针. //2.大多数算法都定义在头文件algorithm中.标准库还在头文件numeric中定义了一组数值泛型算法. //3.算法本身不会 ...
- poj 1179 Polygon
http://poj.org/problem?id=1179 Polygon Time Limit: 1000MS Memory Limit: 10000K Total Submissions: ...
- Java基础(40):Java中的集合介绍---Collection与Map
集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap ...
- DataBase: LeetCode
Combine Two Tables # Write your MySQL query statement below Select p.FirstName, p.LastName, a.City, ...
- extjs grid 单元格 多选
new Ext.grid.CellSelectionModel({ last : false, // 上一次选中的单元格 selections : [], // 选择区缓存 handleMouseDo ...
- CCF真题之图像旋转
201503-1 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度. 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可. 输入格式 ...
- drds 广播表的创建以及使用
创建表 , 关键词 : BROADCAST CREATE TABLE `financial_product_yjw` ( `ID` int(10) unsigned NOT NULL AUTO_INC ...
- 常用的DC插头公头的尺寸
2.0*0.6mm:这种应该是用在诺基亚黑白屏那种手机上的充电插头 2.5*0.7mm:这种不知用在哪里 3.5*1.35mm:应该是以前那种小型的磁带机放音机上用的 4.0*1.7mm:已知 ora ...