?? 19-2.cfm.htm
字號:
<P ALIGN="JUSTIFY"> Response.Write(MyTextFile.Read(1))</P>
<P ALIGN="JUSTIFY">WEND</P>
<P ALIGN="JUSTIFY">MyTextFile.Close</P>
<P ALIGN="JUSTIFY">%></P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 這個腳本從文本文件中接受第一行,每次接受顯示一個字符,利用AtEndOfLine屬性一直到行尾截止,由Read(1)一個一個讀取。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 下面是從文本文件讀取數據時要用到的方法</P>
<B><P ALIGN="JUSTIFY">■</B>Read(Number).從文本文件中讀取限定數目個字符</P>
<B><P ALIGN="JUSTIFY">■</B>ReadLine.從文本文件中讀取一行(換行符不返回)</P>
<B><P ALIGN="JUSTIFY">■</B>ReadAll.這個方法接受TextStream文件的所有內容</P>
<B><P ALIGN="JUSTIFY">■</B>Skip(Number).這個方法從一個打開的文本文件中跳過指定數目個字符</P>
<B><P ALIGN="JUSTIFY">■</B>close關閉當前打開的文件并釋放所占用的資源。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 一般說來,OpenTextFile()方法是用來讀取數據的,但是你也可以用它追加數據信息,例如,你希望在該文本數據中追加一些新內容,可以見下面的示例:</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"><%</P>
<P ALIGN="JUSTIFY">Set MyFileObject=Server.CreateObject(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>Scripting.FileSystemObject</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>)</P>
<P ALIGN="JUSTIFY">Set MyTextFile=MyFileObject.OpenTextFile(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>c:\mydir\browser.log</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>,8,TRUE)</P>
<P ALIGN="JUSTIFY">MyTextFile.WriteLine(Request.ServerVariables(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>HTTP_USER_AGENT</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>))</P>
<P ALIGN="JUSTIFY">MyTextFile.Close</P>
<P ALIGN="JUSTIFY">%></P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 這個腳本用于在網站中創建一個日志文件。無論什么時候這個腳本執行,此時的瀏覽器類型就會追加到該日志文件中,瀏覽器信息由ServerVariables集合接收。</P>
<P ALIGN="JUSTIFY"> </P>
<B><P ALIGN="JUSTIFY">注意</P>
</B><P ALIGN="JUSTIFY"> 有關ServerVariables集合的情況參見本書的第14章有關小節。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 這里面需要說明的是,如果browser.log不存在,則會自動建立,這是使用了OpenTextFile()方法的兩個參數:IOMode和Create參數。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 下面介紹針對于OpenTextFile()方法的所有參數:</P>
<B><P ALIGN="JUSTIFY">■</B>FileSpecifier,限定要進行讀寫或者追加的文本文件名稱</P>
<B><P ALIGN="JUSTIFY">■</B>IOMODE,可選參數,指示該文件是被用來讀,寫還是追加。默認為1表示讀,設為2表示進行寫操作,進行追加操作則設為8。</P>
<B><P ALIGN="JUSTIFY">■</B>Create,可選參數,如果文件不存在是否創建,默認為False,如果希望進行創建,則設為TRUE</P>
<B><P ALIGN="JUSTIFY">■</B>Format,可選參數,指示文件是ASCII碼制格式還是Unicode格式,作為默認的ASCII碼制文件,其值為-2,如果希望設為Unicode格式,此參數設為-1</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 你不能在當前版本的Active Server Pages中使用常量,例如,你如果希望進行文件 追加,你必須使用數字8作為參數而不是什么常量。</P>
<B><P ALIGN="JUSTIFY"> </P>
</FONT><FONT FACE="宋體" LANG="ZH-CN"><P ALIGN="JUSTIFY">范例應用</P>
</B></FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY">這部分提供了一個范例應用來使得讀者對這些對象、方法、屬性、以及集合、有更加明晰的認識了解。在世界最大的網上書店,美國亞馬遜網上書店(www.amazon.com)正在進行(也許您在閱讀時這個活動還在進行)網上的故事合創運動,由John Updike先生寫入 該故事的第一部分,每一天,訪問者都可以根據自己的意愿在線進行故事發展的寫作,同時每一天都會對寫的最好的給出$1000的獎賞(如果您的英語寫作足夠好,不妨一試)。這個故事是大家一起添加的。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY">這真是個好主意,這下子網站的‘回頭客’就會激增,同時產生巨大的社會影響力,你完全可以在自己的網站上實現類似的應用。最簡單的方法就是直接把這個范例拿出去放到你的網站上,當然,如果你的網站還不能支持Active Server Pages,那么只好說你太不幸運了(見圖19.1)。</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY">例子19.1 Story.asp腳本</P>
<P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"><%</P>
<P ALIGN="JUSTIFY">IF NOT Request.Form(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>NextLine</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>)=</FONT><FONT SIZE=3>””</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3> THEN</P>
<P ALIGN="JUSTIFY">Set MyFileObject=Server.CreateObject(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>Scripting.FileSystemObject</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>)</P>
<P ALIGN="JUSTIFY">Set MyTextFile=MyFileObject.CreateTextFile(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>C:\MyDir\TheStory.txt</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>,8,TRUE)</P>
<P ALIGN="JUSTIFY">MyTextFile.WriteLine(Request.Form(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>NextLine</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>))</P>
<P ALIGN="JUSTIFY">MyTextFile.Close</P>
<P ALIGN="JUSTIFY">END IF</P>
<P ALIGN="JUSTIFY">%></P>
<P ALIGN="JUSTIFY"><HTML></P>
<P ALIGN="JUSTIFY"><HEAD><TITLE>在線故事接龍</TITLE></HEAD></P>
<P ALIGN="JUSTIFY"><BODY></P>
<P ALIGN="JUSTIFY"><hr></P>
<P ALIGN="JUSTIFY"><%</P>
<P ALIGN="JUSTIFY">Set MyFileObject=Server.CreateObject(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>Scripting.FileSystemObject</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>)</P>
<P ALIGN="JUSTIFY">Set MyText=MyFileObject.OpenTextFile(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>C:\MyDir\TheStory.txt</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>)</P>
<P ALIGN="JUSTIFY">WHILE NOT MyTextFile.AtEndOfStream</P>
<P ALIGN="JUSTIFY"> Response.Write(</FONT><FONT SIZE=3>“</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>&nsp;&nsp;</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>&MyTextFile.Readline)</P>
<P ALIGN="JUSTIFY">WEND</P>
<P ALIGN="JUSTIFY">MyTextFile.Close</P>
<P ALIGN="JUSTIFY">%></P>
<P ALIGN="JUSTIFY"><HR></P>
<P ALIGN="JUSTIFY"><H3>請輸入這個故事的新行:</h3></P>
<P ALIGN="JUSTIFY"><Form method=</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>post</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3> action=</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>Story.asp</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>></P>
<P ALIGN="JUSTIFY"><input name=</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>NextLine</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3> Type=Text Size=70></P>
<P ALIGN="JUSTIFY"><input type=Submit Value=</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>確認添加這一句</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>></P>
<P ALIGN="JUSTIFY"></Form></P>
<P ALIGN="JUSTIFY"></Body></P>
<P ALIGN="JUSTIFY"></HTML></P>
<B><P ALIGN="JUSTIFY">圖19.1 一個在線的故事接龍</P>
</B><P ALIGN="JUSTIFY"><IMG SRC="Image120.gif" tppabs="http://210.74.168.175/guide/asp/part19/Image120.gif" WIDTH=535 HEIGHT=329></P>
<P ALIGN="JUSTIFY"> 這個Active Server Pages文件包含兩段主要腳本,第一部分是看是否有Form傳來的 句子信息,如果有,則該句子添加到TheStory.txt文件中去。第二部分是顯示TheStory.txt文件中的內容,請注意其中每一行之間用兩個&nbsp來進行分隔,參見HTML中符號含義。然后用一個Form提供訪問者進行添加,其中Form執行還是這個文件,(就是第一部分腳本處理),因此注意該文件名稱必須是</FONT><FONT SIZE=3>”</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3>story.asp</FONT><FONT SIZE=3>”</P>
</FONT><FONT FACE="宋體" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"> </P>
<P ALIGN="JUSTIFY"> 其實這個應用實在是過于簡單,但是作一個留言版相當合適,而且在該文件膨脹過大時,只要刪除就可以了,(不要忘了前面的腳本中將OpenTextFile的Create參數設為TRUE)是可以創建文本文件的。</P></FONT></BODY>
</HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -