using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Data;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using RestSharp;
using RestSharp.Extensions;
using RestSharp.Authenticators;
using RestSharp.Deserializers;
using RestSharp.Validation;
using Geovin.Du.Commn;
///
/// 涂聚文 Geovin Du geovindu
///
///
public partial class DownloadImge : System.Web.UI.Page
{
///
///
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
}
///
///
///
///
///
protected void Button1_Click(object sender, EventArgs e)
{
string weburl = this.txtURL.Text.Trim();
int stat = int.Parse(this.txtStart.Text.Trim());
int end = int.Parse(this.txtEnd.Text.Trim())+1;
int k = 0;
int er = 0;
for (int i = stat; i< end; i++)
{
string fileurl = HttpContext.Current.Server.MapPath(@"ImgFile//" + i.ToString() +this.txtExift.Text.Trim());
DownloadData(weburl+i.ToString()+this.txtExift.Text.Trim(), fileurl);
k++;
}
Response.Write("Ok" + k.ToString() + ",erro" + er.ToString());
}
///
/// 文件下载
///
///
///
private async void RunBackground(string website, string file)
{
int k = 1;
int er = 1;
var succeed = await DownLoadGlobalHistoryNew(website, file);
if (succeed)
{
k++;
}
else
{
er++;
}
}
///
///
///
///
///
string geterro(List errfile)
{
string str = string.Empty;
if (errfile.Count > 0)
{
int k = 0;
foreach (string s in errfile)
{
if (k == 0)
{
str = s;
}
else
{
str = str + "," + s;
}
k++;
}
}
return str;
}
///
///
///
///
///
///
public Task DownLoadGlobalHistoryNew(string url, string file)
{
string dataString = string.Empty;
return Task.Run(() =>
{
var succeed = false;
try
{
var dataStringNew = new WebClient { Encoding = Encoding.UTF8 }.DownloadString(url);
if (dataString != dataStringNew)
{
dataString = dataStringNew;
Write(file, dataString);
succeed = true;
}
}
catch (Exception)
{
}
return succeed;
});
}
///
///
///
///
///
private void Write(string file, string dataString)
{
try
{
if (File.Exists(file) && !string.IsNullOrWhiteSpace(dataString))
File.Delete(file);
File.WriteAllText(file, dataString);
}
catch (Exception)
{
}
}
///
/// 图片下载
///
///
///
protected void DownloadData(string strFileUrlToDownload, string strfile)
{
WebClient client = new WebClient();
byte[] myDataBuffer = client.DownloadData(strFileUrlToDownload);
MemoryStream storeStream = new MemoryStream();
storeStream.SetLength(myDataBuffer.Length);
storeStream.Write(myDataBuffer, 0, (int)storeStream.Length);
storeStream.Flush();
string currentpath = strfile;// System.IO.Directory.GetCurrentDirectory() + @"\Folder";
using (FileStream file = new FileStream(currentpath, FileMode.Create, System.IO.FileAccess.ReadWrite))
{
byte[] bytes = new byte[storeStream.Length];
storeStream.Read(bytes, 0, (int)storeStream.Length);
file.Write(myDataBuffer, 0, (int)storeStream.Length);
storeStream.Close();
}
//The below Getstring method to get data in raw format and manipulate it as per requirement
string download = Encoding.ASCII.GetString(myDataBuffer);
}
}