1、建立三个文件
Caiji.aspx--------------------进行采集的主页面
Loading.aspx---------------执行程序的页面
Loading2.aspx-------------显示进度
2、下面这两个页面的前台页面什么也不要写,因为要接收ajax的指令来进行操作。
Loading.aspx.cs
using
System;
using
System.Data;
using
System.Configuration;
using
System.Collections;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
using
System.IO;
using
System.Net;
using
System.Text;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
namespace
MyTest.CaiJi
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//// <summary>
/// 执行远程获取文件--prosurfer
/// </summary>
public partial class Loading : System.Web.UI.Page
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
public static string reAllListHtml, reAllHtml, htmlAddress;
public static string RelativeWay, RootWay, htmlListLu;
//public static ArrayList alist;//地址列表
public static int getSavedNum, Allcount;
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
protected void Page_Load(object sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
//int reint = (int)((SaveCount / AllCount) * 100);
//Random rnd = new Random();rnd.Next(0, 100)
//Response.Write(reint);
string s_flash_add = "", type = "0";
getSavedNum = 0;
if (Request.Params["address"] != null)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
s_flash_add = Request.Params["address"].ToString();
}
else
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
Response.Write("错误!");
}
if (Request.Params["type"] != null)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
type = Request.Params["type"].ToString();
}
if (type == "1")
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
//Response.Write("0");
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
char[] c1 =...{ ',' };
ArrayList alist = StringSplitString(s_flash_add, c1);
Allcount = alist.Count;
getSavedNum = 0;
for (int i = 0; i < alist.Count; i++)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
getflash(alist[i].ToString());
getSavedNum += 1;
}
//getSavedNum = 0;
}
else
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
int reint = (int)((getSavedNum / Allcount) * 100);
Response.Write(reint);
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//*****************/
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
public static ArrayList StringSplitString(string strList, char[] splitchar)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
ArrayList alist = new ArrayList();
string[] strs = null;
if (strList != null && strList != "")
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
strs = strList.Split(splitchar);
}
if (strs.Length > 0)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
for (int i = 0; i < strs.Length; i++)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
alist.Add(strs[i]);
}
return alist;
}
return null;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
public void getflash(string flashaddress)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
bool isSave = false;
if (flashaddress != null)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
//flashAddress = Tohttp(flashAddress);
isSave = SaveFileFromUrl(flashaddress);
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
//if (isSave)
// Label1.Text += url + "成功!<br />";
//else
// Label1.Text += url + "失败!<br />";
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//// <summary>
/// 从文件地址下载文件到本地磁盘--prosurfer
/// </summary>
/// <param name="Url">文件网址</param>
/// <returns></returns>
public bool SaveFileFromUrl(string Url)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
if (Url.IndexOf(".") == -1)
return false;
string fileExt = Url.Substring(Url.LastIndexOf(".") + 1);
bool Value = false;
WebResponse response = null;
Stream stream = null;
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
try
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
response = request.GetResponse();
stream = response.GetResponseStream();
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
if (!response.ContentType.ToLower().StartsWith("text/"))
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
Value = SaveBinaryFile("flashsrc", fileExt, response);
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
catch (Exception err)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
string aa = err.ToString();
}
return Value;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//// <summary>
/// 将二进制文件保存到磁盘--prosurfer
/// </summary>
/// <param name="fileDirectory">保存的目录flashsrc</param>
/// <param name="fileNameExt">保存的类型</param>
/// <param name="response">网络响应</param>
/// <returns></returns>
private bool SaveBinaryFile(string fileDirectory, string fileNameExt, WebResponse response)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
bool Value = true;
byte[] buffer = new byte[1024];
string dirpath = Server.MapPath(fileDirectory + "/");
if (Directory.Exists(dirpath) == false)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
Directory.CreateDirectory(dirpath);
}
try
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
string FileName = dirpath + GetUniquelyString() + "." + fileNameExt;
if (File.Exists(FileName))
File.Delete(FileName);
Stream outStream = System.IO.File.Create(FileName);
Stream inStream = response.GetResponseStream();
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
int l;
do
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
l = inStream.Read(buffer, 0, buffer.Length);
if (l > 0)
outStream.Write(buffer, 0, l);
}
while (l > 0);
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
outStream.Close();
inStream.Close();
}
catch
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
Value = false;
}
return Value;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//// <summary>
/// 获取一个不重复的文件名--prosurfer
/// </summary>
/// <returns></returns>
public static string GetUniquelyString()
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
const int RANDOM_MAX_VALUE = 1000;
string strTemp, strYear, strMonth, strDay, strHour, strMinute, strSecond, strMillisecond;
Random rnd = new Random();
DateTime dt = DateTime.Now;
int rndNumber = rnd.Next(RANDOM_MAX_VALUE);
strYear = YieldRandNum(5);
strMonth = (dt.Month > 9) ? dt.Month.ToString() : "i" + dt.Month.ToString();
strDay = (dt.Day > 9) ? dt.Day.ToString() : "a" + dt.Day.ToString();
strHour = (dt.Hour > 9) ? dt.Hour.ToString() : "n" + dt.Hour.ToString();
strMinute = (dt.Minute > 9) ? dt.Minute.ToString() : "j" + dt.Minute.ToString();
strSecond = (dt.Second > 9) ? dt.Second.ToString() : "n" + dt.Second.ToString();
strMillisecond = dt.Millisecond.ToString();
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
strTemp = strYear + strDay + strMonth + strHour + strMinute + strSecond + strMillisecond + rndNumber.ToString();
strTemp = strTemp.Replace("1", "q");
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
return strTemp;
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//// <summary>
/// 产生随机字母--prosurfer
/// </summary>
/// <param name="d"></param>
/// <returns></returns>
public static string YieldRandNum(int d)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
char[] seed =...{ 'A', 'b', 'B', 'c', 'C', 'd', 'D', 'e', 'E', 'f', 'F', 'G', 'h', 'H', 'i', 'j', 'J', 'k', 'K', 'L', 'm', 'M', 'n', 'N', 'p', 'P', 'q', 'Q', 'R', 's', 'S', 't', 'T', 'u', 'U', 'v', 'V', 'w', 'W', 'x', 'X', 'y', 'Y', 'z', 'Z' };
int seed_count = seed.Length;
Random rand = new Random();
StringBuilder sb = new StringBuilder(4);
for (int i = 0; i < d; i++)
sb.Append(seed[rand.Next(0, seed_count)]);
return sb.ToString();
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//***************************************/
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
}
Loading2.aspx.cs
public
partial
class
Loading2 : System.Web.UI.Page
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
protected void Page_Load(object sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
if (Loading.Allcount != 0)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
double red = Loading.getSavedNum * 100 / Loading.Allcount;
Response.Write(Convert.ToInt32(red));
}
else
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
Response.Write("1");
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
在Caiji.aspx前台加上
function
gid(id)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
return document.getElementById?document.getElementById(id):null;
}
var
xmlHttp1,xmlHttp2;
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
createXMLHttpRequest()
...
{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (window.ActiveXObject) ...{
xmlHttp1 = new ActiveXObject("Microsoft.XMLHTTP");
}
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
else if (window.XMLHttpRequest) ...{
xmlHttp1 = new XMLHttpRequest();
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
createXMLHttpRequest2()
...
{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (window.ActiveXObject) ...{
xmlHttp2 = new ActiveXObject("Microsoft.XMLHTTP");
}
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
else if (window.XMLHttpRequest) ...{
xmlHttp2 = new XMLHttpRequest();
}
}
//
上传操作
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
pollServer(type)
...
{
yincang();
createXMLHttpRequest();
pollServer2();
var flashs = document.getElementById("flashAll").value;
data = "address="+flashs+"&type="+type;
var url = "Loading.aspx";
xmlHttp1.open("POST", url, true);
xmlHttp1.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp1.send(data);
}
//
获取进度
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
pollServer2()
...
{
createXMLHttpRequest2();
var url = "Loading2.aspx";
xmlHttp2.open("POST", url, true);
xmlHttp2.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp2.onreadystatechange = pollCallback2;
xmlHttp2.send(null);
}
//
传送过程返回
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
pollCallback2()
...
{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (xmlHttp2.readyState == 4) ...{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (xmlHttp2.status == 200) ...{
var percent_complete = xmlHttp2.responseText;
var progress = document.getElementById("progress");
var progressPersent = document.getElementById("progressPersent");
progress.style.width = percent_complete + "%";
progressPersent.innerHTML = percent_complete + "%";
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (percent_complete < 100) ...{
setTimeout("pollServer2()", 3000);
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
} else ...{
document.getElementById("complete").innerHTML = "已生成完成!";
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
}
function
yincang()
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
var s = gid("start");
s.removeChild(s.childNodes[0]);
}
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
function
clearBar()
...
{
var progress_bar = document.getElementById("progressBar");
var progressPersent = document.getElementById("progressPersent");
var complete = document.getElementById("complete");
progress_bar.style.visibility = "visible"
progressPersent.innerHTML = " ";
complete.innerHTML = "开始生成!";
}
function
next()
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
__doPostBack('Go','');
}
在正文内
<
textarea
id
="flashAll"
name
="flashAll"
cols
="200"
rows
="20"
>
<%
=
reflashaddresses
%>
</
textarea
><
br
/>
<
form
id
="form1"
runat
="server"
>
<
div
>
结果:
<
asp:Label
ID
="Label1"
runat
="server"
Text
=""
></
asp:Label
><
br
/>
获取列表页面:
<
asp:TextBox
ID
="TextBox1"
runat
="server"
></
asp:TextBox
>
<
asp:Button
ID
="Button1"
runat
="server"
Text
="下一步"
OnClick
="Button1_Click"
/>
<
asp:Panel
runat
="server"
ID
="Panel1"
Visible
="false"
>
开始循环标记:
<
asp:TextBox
Text
=""
TextMode
="MultiLine"
runat
="server"
ID
="TextBox2"
></
asp:TextBox
><
br
/>
结束循环结束:
<
asp:TextBox
Text
=""
TextMode
="MultiLine"
runat
="server"
ID
="TextBox3"
></
asp:TextBox
><
br
/>
<
asp:Button
ID
="Button3"
runat
="server"
Text
="下一步"
OnClick
="Button3_Click"
/>
</
asp:Panel
>
<
asp:Panel
runat
="server"
ID
="StringDo"
Visible
="false"
>
开始标记:
<
asp:TextBox
Text
=""
TextMode
="MultiLine"
runat
="server"
ID
="StartUrlString"
></
asp:TextBox
><
br
/>
结束标记:
<
asp:TextBox
Text
=""
TextMode
="MultiLine"
runat
="server"
ID
="EndUrlString"
></
asp:TextBox
><
br
/>
<
a
href
="javascript:next();"
>
启 动
</
a
>
<
asp:LinkButton
ID
="Go"
runat
="server"
OnClick
="Go_Click"
></
asp:LinkButton
>
</
asp:Panel
>
<
br
/><
span
id
="start"
><
a
href
="javascript:pollServer(1);"
>
生成
</
a
>
</
span
>
</
div
>
</
form
>
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
<
div
id
="progressBar"
style
="padding:0px;border:solid black 0px;visibility:hidden"
>
<
table
width
="300"
border
="0"
cellspacing
="0"
cellpadding
="0"
align
="center"
>
<
tr
>
<
td
align
="center"
id
="progressPersent"
>
0%
</
td
>
</
tr
>
<
tr
>
<
td
>
<
table
width
="100%"
border
="1"
cellspacing
="0"
cellpadding
="0"
bordercolor
="#000000"
>
<
tr
>
<
td
>
<
table
width
="1%"
border
="0"
cellspacing
="0"
cellpadding
="0"
bgcolor
="#FF0000"
id
="progress"
height
="20"
>
<
tr
>
<
td
>
</
td
>
</
tr
>
</
table
></
td
>
</
tr
>
</
table
>
</
td
>
</
tr
>
<
tr
>
<
td
align
="center"
id
="complete"
></
td
>
</
tr
>
</
table
>
</
div
>
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
<
script
type
="text/javascript"
>
...
clearBar();
</
script
>
<
iframe
src
="Loading.aspx"
frameborder
="0"
scrolling
="no"
style
="display:none;"
></
iframe
>
正文后台
public
static
string
reAllListHtml,reAllHtml,htmlAddress,flashAddress;
public
static
string
RelativeWay, RootWay, htmlListLu;
public
static
ArrayList alist;
//
地址列表
public
static
int
getSavedNum;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
public
static
string
reflashaddresses ;
protected
void
Page_Load(
object
sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
getSavedNum = 0;
reflashaddresses = "";
}
void
f()
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{ }
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
protected
void
Button1_Click(
object
sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
htmlAddress = TextBox1.Text.Trim().ToLower();
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
RelativeWay = htmlAddress.Substring(0, htmlAddress.LastIndexOf("/")) + "/";//相对路径
RootWay = htmlAddress.Substring(0, htmlAddress.IndexOf("/", 7)) + "/";//根路径
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
reAllListHtml = GetPageHTML(htmlAddress);
Panel1.Visible = true;
}
public
static
string
Tohttp(
string
str)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
if (str.StartsWith("/"))
str = RootWay + str;
if (!str.StartsWith("http://"))
str = RelativeWay + str;
return str;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
protected
void
Button3_Click(
object
sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
string starstr = TextBox2.Text.Trim();
string endstr = TextBox3.Text.Trim();
alist = Get_fileAddresss(starstr, endstr, reAllListHtml);
Panel1.Visible = false;
StringDo.Visible = true;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
protected
void
Go_Click(
object
sender, EventArgs e)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
string str = "";
string starstr = StartUrlString.Text.Trim();
string endstr = EndUrlString.Text.Trim();
for (int i = 0; i < alist.Count; i++)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
reAllHtml = GetPageHTML(alist[i].ToString());
flashAddress = Get_fileAddress(starstr, endstr, reAllHtml);
str += flashAddress + ",";
}
reflashaddresses = str;
Response.Write(reflashaddresses);
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
public
static
string
Get_fileAddress(
string
startstr,
string
endstr,
string
strResult)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
String temp = "";
int start, stop;
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
start = strResult.IndexOf(startstr, 0, strResult.Length);
stop = strResult.IndexOf(endstr, 0, strResult.Length);
if (start == -1 || stop == -1)
return null;
temp = strResult.Substring(start + startstr.Length, stop - start - startstr.Length);
return temp;
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
public
static
ArrayList Get_fileAddresss(
string
startstr,
string
endstr,
string
strResult)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
ArrayList list = new ArrayList();
int start = 0, stop = 0;
while (start != -1 && stop != -1)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
start = strResult.IndexOf(startstr, 0, strResult.Length);
if (start == -1)
break;
strResult = strResult.Substring(start + startstr.Length);
stop = strResult.IndexOf(endstr, 0, strResult.Length);
if (stop == -1)
break;
string tempaddress = strResult.Substring(0, stop);
tempaddress = Tohttp(tempaddress);
list.Add(tempaddress);
strResult = strResult.Substring(stop);
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
return list;
}
http://blog.csdn.net/prosurfer
程序有点乱哦,还没好好整理,就晾出来了,不要拍砖哦
。带进度条的文件采集程序就可以成功运行了。:)