1 / 31

第 9 章 Server 物件與文字檔案處理

第 9 章 Server 物件與文字檔案處理. 9-1 伺服器的系統資訊 9-2 Server 物件的使用 9-3 ASPError 錯誤處理物件 9-4 文字檔案的操作 9-5 文字檔案的讀取與寫入. 9-1 伺服器的系統資訊. 9-1-1 伺服器系統資訊的內容 9-1-2 取得伺服器環境變數. 9-1-1 伺服器系統資訊的內容. Web 伺服器的系統資訊就是伺服器的環境變數。 Request 物件的資料集合 ServerVariables 可以取得伺服器的環境變數。. 9-1-2 取得伺服器環境變數.

hunter
Télécharger la présentation

第 9 章 Server 物件與文字檔案處理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第9章 Server物件與文字檔案處理 • 9-1 伺服器的系統資訊 • 9-2 Server物件的使用 • 9-3 ASPError錯誤處理物件 • 9-4 文字檔案的操作 • 9-5 文字檔案的讀取與寫入

  2. 9-1 伺服器的系統資訊 • 9-1-1 伺服器系統資訊的內容 • 9-1-2 取得伺服器環境變數

  3. 9-1-1 伺服器系統資訊的內容 • Web伺服器的系統資訊就是伺服器的環境變數。 • Request物件的資料集合ServerVariables可以取得伺服器的環境變數。

  4. 9-1-2 取得伺服器環境變數 • 使用Request物件的ServerVariables資料集合,可以取得環境變數的內容,如下: IPAddress = Request.ServerVariables("REMOTE_ADDR") strPath = Request.ServerVariables("PATH_INFO") • 使用For Each迴路取得所有的環境變數,如下所示: For Each ServerVar In Request.ServerVariables strValue = Request.Servervariables(ServerVar) Next

  5. 9-2 Server物件的使用 • 9-2-1 ASP使用AcitveX元件 • 9-2-2 取得伺服器路徑 • 9-2-3 伺服端網頁轉向 • 9-2-4 伺服端執行網頁

  6. 9-2-1 ASP使用AcitveX元件 • 在ASP程式使用外部ActiveX元件,可以使用Server.CreateObject方法建立所需的物件,如下所示: Set objFSO=Server.CreateObject("Scripting.FileSystemObject") • 如果需要重新指定物件的內容,我們需要使用Set指令,如下所示: Set objFSO=Nothing • 重設物件變數為Nothing,就是釋放物件。

  7. 9-2-2 取得伺服器路徑 • 取得執行ASP程式的虛擬目錄,請使用ServerVariables資料集合的PATH_INFO參數取得,如下所示: Request.ServerVariables("PATH_INFO") • Server.MapPath方法可以轉換虛擬目錄成為所需的實際路徑,其程式碼如下所示: StrPath=Server.MapPath(Request.ServerVariables("PATH_INFO")) • 取得ASP程式Ch9-1-2.asp的實際路徑,如下所示: StrPath = Server.MapPath("/Ch9-1-2.asp")

  8. 9-2-3 伺服端網頁轉向 • Server.Transfer為ASP 3.0提供的全新轉向方法。 • Server.Transfer轉向操作完全在伺服端完成,並不會浪費頻寬,而且使用方式和Response.Redirct方法幾乎相同,如下所示: Server.Transfer("Ch9-2-2.asp")

  9. 9-2-4 伺服端執行網頁 • Server.Execute方法屬於ASP 3.0的方法。 • Execute方法在轉向的ASP程式執行完成後,還會回到呼叫轉向的ASP程式,其程式碼如下所示: …… Server.Execute("Ch9-2-4s.asp") …… • 程式碼在執行轉向到ASP程式Ch9-2-4s.asp,在執行完後還會回到上述程式碼,執行Server.Execute方法的下一列程式碼。

  10. 9-3 ASPError錯誤處理物件 • 9-3-1 自訂錯誤網頁 • 9-3-2 ASPError物件的使用

  11. 9-3-1 自訂錯誤網頁 • 在IIS的Internet服務管理員的Web站台,在「內容」對話方塊的自訂錯誤標籤可以看到預設的錯誤提示訊息。 • HTTP錯誤的類型共有三種,如下所示: • 錯誤文字內容:這是伺服器的預設值。 • 檔案類型:HTML文件。 • URL類型:可以使用ASP程式。

  12. 9-3-2 ASPError物件的使用-1 • ASP 3.0版提供全新的錯誤處理物件ASPError物件。 • 當錯誤產生時,在ASP程式可以使用Server.GetLastError方法取得最近一個ASP程式錯誤,如下所示: Set objASPError = Server.GetLastError() • 然後使用ASPError物件屬性取得錯誤資訊。

  13. 9-3-2 ASPError物件的使用-2 • ASPError物件的常用屬性,如下表所示:

  14. 9-4 文字檔案的操作 • 9-4-1 FileSystemObject物件的基礎 • 9-4-2 建立文字檔案 • 9-4-3 檢查檔案是否存在 • 9-4-4 刪除檔案 • 9-4-5 取得檔案屬性

  15. 9-4-1 FileSystemObject物件的基礎 • FileSystemObject物件模型簡稱FSO,FSO能夠取得伺服器磁碟機的相關資訊,或在伺服器新增、移動、變更、建立或刪除資料夾,處理文字檔案內容的讀寫。 • 建立FSO物件,其程式碼如下所示: Dim objFSO Set objFSO = CreateObject("Scriptiong.FilesystemObject")

  16. 9-4-2 建立文字檔案 • 使用FSO物件可以建立全新的文字檔案,使用的為CreateTextFile方法,其程式碼如下所示: Set objStream=objFSO.CreateTextFile(strPath, True) • 程式碼建立objStream文字資料流物件,並且建立文字檔案,其參數如下: • objFSO:FSO物件。 • strPath:檔案的實際路徑。 • True:參數為True表示覆寫檔案,False表示不覆寫。

  17. 9-4-3 檢查檔案是否存在 • 在建立文字檔案前需要檢查檔案是否存在,FSO物件提供FileExists方法檢查檔案是否存在,If Then條件架構,如下所示: If objFSO.FileExists(strPath) Then ……. End If

  18. 9-4-4 刪除檔案 • FSO物件的GetFile方法可以取得File物件的檔案資訊,如下所示: Set objFile = objFSO.GetFile(strPath) • 程式碼在取得指定檔案的File物件,接著可以使用File物件的方法進行檔案的操作,例如:刪除檔案,如下所示: objFile.Delete

  19. 9-4-5 取得檔案屬性 • File物件可以取得檔案的資訊,在取得指定檔案的File物件後,如下所示: Set objFile = objFSO.GetFile(strPath) • 程式碼在取得File物件後,就可以使用屬性取得檔案資訊。

  20. 9-5 文字檔案的讀取與寫入 • 9-5-1 如何讀取與寫入文字檔案 • 9-5-2 寫入資料到文字檔案 • 9-5-3 寫入空白行到文字檔案 • 9-5-4 寫入一行資料到文字檔案 • 9-5-5 新增文字到文字檔案 • 9-5-6 讀取文字檔案的字元 • 9-5-7 讀取文字檔的一行 • 9-5-8 讀取整個文字檔案 • 9-5-9 另一種方法讀取整個文字檔案 • 9-5-10 跳過幾行讀取文字檔案

  21. 9-5-1 如何讀取與寫入文字檔案 • FSO物件讀寫的文字檔為是一種文字資料流的TextStream物件,只能循序的讀寫,讀寫的步驟如下所示: • 第一步:建立FileSystemObject物件 • 第二步:開啟文字檔案 • 第三步:執行文字檔案的讀寫 • 第四步:關閉文字檔案

  22. 9-5-2 寫入資料到文字檔案 • TextStream物件的寫入文字檔案的方法有很多,Write方法可以將參數的字串寫入檔案,不過在寫入時並不換行,如下所示: objStream.Write("FileSystemObject物件")

  23. 9-5-3 寫入空白行到文字檔案 • Write方法寫入的資料並不會換行,我們可以在寫入時加上空白列,如下所示: objStream.WriteBlankLines(2) • 程式碼可以加上空白列,參數為列數,以此例為兩列。

  24. 9-5-4 寫入一行資料到文字檔案 • WriteLine方法可以寫入含換行的字串,如下所示: objStream.WriteLine("FileSystemObject物件") • 程式碼可以寫入一行文字到檔案。

  25. 9-5-5 新增文字到文字檔案 • ForWriting常數表示文字檔允許寫入,這種寫入方式在寫入前會清除文字檔案的所有內容,如同一個新的檔案。 • 如果不想清除檔案內容,ForAppending常數只是將資料新增到目前檔案的檔尾,表示檔案可以新增內容。

  26. 9-5-6 讀取文字檔案的字元-1 • 在開啟唯讀的文字檔案,如下所示: Set objStream=objFSO.OpenTextFile(strPath,ForReading,False,False) • 接著可以讀取幾個字,如下所示: strOutput=objStream.Read(17) • 程式碼使用Read方法讀取目前檔案指標開始的17個字,英文為字母,中文為一個字,參數值就是讀取的字數。

  27. 9-5-6 讀取文字檔案的字元-2

  28. 9-5-7 讀取文字檔的一行 • TextStream物件也可以一行一行的讀取文字檔案的內容,如下所示: strOutput=objStream.ReadLine

  29. 9-5-8 讀取整個文字檔案 • TextStream物件可以讀取整個文字檔案的內容,如下所示: strOutput=objStream.ReadAll • 如果需要將換行符號取代為<br>標籤,如此才能正確的顯示換行,如下所示: strOutput=Replace(strOutput,Chr(10),"<br>")

  30. 9-5-9 另一種方法讀取整個文字檔案 • 如果需要使用ReadLine方法讀取整個文字檔案的內容,我們需要使用迴路讀取,如下所示: Do While Not objStream.AtEndOfStream strLine = objStream.ReadLine Loop

  31. 9-5-10 跳過幾行讀取文字檔案 • 在檔案指標的應用上,我們可以使用TextStream物件的方法跳過幾個字元不讀取,如下所示: objStream.Skip(16) • 程式碼的Skip方法只是移動檔案指標,並不會讀取文字內容,參數為移動的字數,以此例將跳過16個字。 • 如果想跳過一整列,可以使用SkipLine方法,如下所示: objStream.SkipLine

More Related