HttpResponse.WriteFile 方法

定義

直接將指定的檔案寫入 HTTP 回應輸出串流。

多載

名稱 Description
WriteFile(IntPtr, Int64, Int64)

直接將指定的檔案寫入 HTTP 回應輸出串流。

WriteFile(String, Int64, Int64)

直接將指定的檔案寫入 HTTP 回應輸出串流。

WriteFile(String)

將指定檔案的內容直接寫入 HTTP 回應輸出串流,作為檔案區塊。

WriteFile(String, Boolean)

將指定檔案的內容直接寫入 HTTP 回應輸出串流,作為記憶體區塊。

WriteFile(IntPtr, Int64, Int64)

直接將指定的檔案寫入 HTTP 回應輸出串流。

public:
 void WriteFile(IntPtr fileHandle, long offset, long size);
public void WriteFile(IntPtr fileHandle, long offset, long size);
member this.WriteFile : nativeint * int64 * int64 -> unit
Public Sub WriteFile (fileHandle As IntPtr, offset As Long, size As Long)

參數

fileHandle
IntPtr

nativeint

檔案的檔柄,用來寫入 HTTP 輸出串流。

offset
Int64

檔案中開始寫入的位元組位置。

size
Int64

寫入輸出串流的位元組數。

例外狀況

fileHandlernull

offset 小於0。

-或-

size 大於檔案大小減去 offset

範例

以下範例將一個名為 Login.txt (可能包含 HTML 文字與輸入控制項)的文字檔案中的所有內容直接寫入輸出串流。

String FileName;
 FileStream MyFileStream;
 IntPtr FileHandle;
 long StartPos = 0, FileSize;

 FileName = "c:\\temp\\Login.txt";

 MyFileStream = new FileStream(FileName, FileMode.Open);
 FileHandle = MyFileStream.Handle;
 FileSize = MyFileStream.Length;

 Response.Write("<b>Login: </b>");
 Response.Write("<input type=text id=user /> ");
 Response.Write("<input type=submit value=Submit /><br><br>");

 Response.WriteFile(FileHandle, StartPos, FileSize);

 MyFileStream.Close();

Dim FileName As String
Dim MyFileStream As FileStream
Dim FileHandle As IntPtr
Dim StartPos As Long = 0
Dim FileSize As Long

FileName = "c:\\temp\\Login.txt"

MyFileStream = New FileStream(FileName, FileMode.Open)
FileHandle = MyFileStream.Handle
FileSize = MyFileStream.Length

Response.Write("<b>Login: </b>")
Response.Write("<input type=text id=user /> ")
Response.Write("<input type=submit value=Submit /><br><br>")

Response.WriteFile(FileHandle, StartPos, FileSize)
   
MyFileStream.Close()

備註

當此方法用於大型檔案時,呼叫該方法可能會拋出例外。 此方法可使用檔案大小取決於網頁伺服器的硬體配置。

適用於

WriteFile(String, Int64, Int64)

直接將指定的檔案寫入 HTTP 回應輸出串流。

public:
 void WriteFile(System::String ^ filename, long offset, long size);
public void WriteFile(string filename, long offset, long size);
member this.WriteFile : string * int64 * int64 -> unit
Public Sub WriteFile (filename As String, offset As Long, size As Long)

參數

filename
String

寫入 HTTP 輸出串流的檔案名稱。

offset
Int64

檔案中開始寫入的位元組位置。

size
Int64

寫入輸出串流的位元組數。

例外狀況

offset 小於0。

-或-

size 大於檔案大小減去 offset

參數 filenamenull

範例

以下範例將一個名為 Login.txt (可能包含文字與 HTML 輸入控制項)的文字檔中的所有內容直接寫入輸出串流。

String FileName;
 FileInfo MyFileInfo;
 long StartPos = 0, FileSize;

 FileName = "c:\\temp\\login.txt";
 MyFileInfo = new FileInfo(FileName);
 FileSize = MyFileInfo.Length;

 Response.Write("Please Login: <br>");
 Response.WriteFile(FileName, StartPos, FileSize);

Dim FileName As String
 Dim MyFileInfo As FileInfo
 Dim StartPos, FileSize As Long
 
 FileName = "c:\\temp\\login.txt"
 MyFileInfo = New FileInfo(FileName)
 FileSize = MyFileInfo.Length 
 
 Response.Write("Please Login: <br>")
 Response.WriteFile(FileName, StartPos, FileSize)
    

備註

當此方法用於大型檔案時,呼叫該方法可能會拋出例外。 此方法可使用檔案大小取決於網頁伺服器的硬體配置。

適用於

WriteFile(String)

將指定檔案的內容直接寫入 HTTP 回應輸出串流,作為檔案區塊。

public:
 void WriteFile(System::String ^ filename);
public void WriteFile(string filename);
member this.WriteFile : string -> unit
Public Sub WriteFile (filename As String)

參數

filename
String

寫入 HTTP 輸出的檔案名稱。

例外狀況

參數 filenamenull

範例

以下範例將一個名為 Login.txt (可能包含 HTML 文字與輸入控制項)的文字檔案中的所有內容直接寫入輸出串流。

Response.Write("Please Login: <br>");
 Response.WriteFile("login.txt");

Response.Write("Please Login: <br>")
 Response.WriteFile("login.txt")
    

備註

當此方法用於大型檔案時,呼叫該方法可能會拋出例外。 此方法可使用檔案大小取決於網頁伺服器的硬體配置。

適用於

WriteFile(String, Boolean)

將指定檔案的內容直接寫入 HTTP 回應輸出串流,作為記憶體區塊。

public:
 void WriteFile(System::String ^ filename, bool readIntoMemory);
public void WriteFile(string filename, bool readIntoMemory);
member this.WriteFile : string * bool -> unit
Public Sub WriteFile (filename As String, readIntoMemory As Boolean)

參數

filename
String

要寫入記憶體區塊的檔案名稱。

readIntoMemory
Boolean

表示該檔案是否會寫入記憶體區塊。

例外狀況

參數 filenamenull

範例

以下範例是將檔案寫入記憶體。

Response.WriteFile("login.txt", true);

Response.WriteFile("login.txt", True)
    

備註

當此方法用於大型檔案時,呼叫該方法可能會拋出例外。 此方法可使用檔案大小取決於網頁伺服器的硬體配置。

適用於