using
System;
using
System.Data;
using
System.Configuration;
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;
using
System.IO;
public
partial
class
_Default
: System.Web.UI.Page
{
protected
void
Page_Load(
object
sender,
EventArgs e)
{
}
protected
void
Button1_Click(
object
sender,
EventArgs e)
{
Response.ContentType
=
"application/x-zip-compressed"
;
Response.AddHeader(
"Content-Disposition"
,
"attachment;filename=z.zip"
);
string
filename
= Server.MapPath(
"DownLoad/z.zip"
);
Response.TransmitFile(filename);
}
protected
void
Button2_Click(
object
sender,
EventArgs e)
{
string
fileName
=
"asd.txt"
;
string
filePath=Server.MapPath(
"DownLoad/aaa.txt"
);
FileInfo
fileInfo =
new
FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader(
"Content-Disposition"
,
"attachment;filename="
+
fileName);
Response.AddHeader(
"Content-Length"
,
fileInfo.Length.ToString());
Response.AddHeader(
"Content-Transfer-Encoding"
,
"binary"
);
Response.ContentType
=
"application/octet-stream"
;
Response.ContentEncoding
= System.Text.Encoding.GetEncoding(
"gb2312"
);
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
}
protected
void
Button3_Click(
object
sender,
EventArgs e)
{
string
fileName
=
"aaa.txt"
;
string
filePath
= Server.MapPath(
"DownLoad/aaa.txt"
);
System.IO.FileInfo
fileInfo =
new
System.IO.FileInfo(filePath);
if
(fileInfo.Exists
==
true
)
{
const
long
ChunkSize
= 102400;
byte
[]
buffer =
new
byte
[ChunkSize];
Response.Clear();
System.IO.FileStream
iStream = System.IO.File.OpenRead(filePath);
long
dataLengthToRead
= iStream.Length;
Response.ContentType
=
"application/octet-stream"
;
Response.AddHeader(
"Content-Disposition"
,
"attachment;
filename="
+
HttpUtility.UrlEncode(fileName));
while
(dataLengthToRead
> 0 && Response.IsClientConnected)
{
int
lengthRead
= iStream.Read(buffer, 0, Convert.ToInt32(ChunkSize));
Response.OutputStream.Write(buffer,
0, lengthRead);
Response.Flush();
dataLengthToRead
= dataLengthToRead - lengthRead;
}
Response.Close();
}
}
protected
void
Button4_Click(
object
sender,
EventArgs e)
{
string
fileName
=
"aaa.txt"
;
string
filePath
= Server.MapPath(
"DownLoad/aaa.txt"
);
FileStream
fs =
new
FileStream(filePath,
FileMode.Open);
byte
[]
bytes =
new
byte
[(
int
)fs.Length];
fs.Read(bytes,
0, bytes.Length);
fs.Close();
Response.ContentType
=
"application/octet-stream"
;
Response.AddHeader(
"Content-Disposition"
,
"attachment;
filename="
+
HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
}
}