ASP网站制作之ASP:FileSystemObject处置文件
ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。filesystemobject 有两种次要的文件处置范例:创立、增加或删除数据,和读取文件
挪动、复制和删除文件
创立文件
创立空文本文件(偶然被叫做“文本流”)有三种办法。
第一种办法是用CreateTextFile办法。上面的示例树模了在VBScript中怎样用这类办法来创立文本文件:
Dimfso,f1
Setfso=CreateObject("Scripting.FileSystemObject")
Setf1=fso.CreateTextFile("c: estfile.txt",True)
要在JScript顶用这类办法,则利用上面的代码:
varfso,f1;
fso=newActiveXObject("Scripting.FileSystemObject");
f1=fso.CreateTextFile("c: estfile.txt",true);
请考查示例代码,来了解怎样在FileSystemObject中利用CreateTextFile办法。
创立文本文件的第二种办法是,利用FileSystemObject工具的OpenTextFile办法,并设置ForWriting标记。在VBScript中,代码就像上面的示例一样:
Dimfso,ts
ConstForWriting=2
Setfso=CreateObject("Scripting.FileSystemObject")
Setts=fso.OpenTextFile("c: est.txt",ForWriting,True)
要在JScript中利用这类办法来创立文本文件,则利用上面的代码:
varfso,ts;
varForWriting=2;
fso=newActiveXObject("Scripting.FileSystemObject");
ts=fso.OpenTextFile("c: est.txt",ForWriting,true);
创立文本文件的第三种办法是,利用OpenAsTextStream办法,并设置ForWriting标记。要利用这类办法,在VBScript中利用上面的代码:
Dimfso,f1,ts
ConstForWriting=2
Setfso=CreateObject("Scripting.FileSystemObject")
fso.CreateTextFile("c: est1.txt")
Setf1=fso.GetFile("c: est1.txt")
Setts=f1.OpenAsTextStream(ForWriting,True)
在JScript中,则利用上面示例中的代码:
varfso,f1,ts;
varForWriting=2;
fso=newActiveXObject("Scripting.FileSystemObject");
fso.CreateTextFile("c: est1.txt");
f1=fso.GetFile("c: est1.txt");
ts=f1.OpenAsTextStream(ForWriting,true);
增加数据到文件中
一旦创立了文本文件,利用上面的三个步骤向文件增加数据:
翻开文本文件。
写进数据。
封闭文件。
要翻开现有的文件,则利用FileSystemObject工具的OpenTextFile办法或File工具的OpenAsTextStream办法。
要写数据到翻开的文本文件,则依据下表所述义务利用TextStream工具的Write、WriteLine或WriteBlankLines办法。
义务 办法
向翻开的文本文件写数据,不必后续一个新行字符。Write
向翻开的文本文件写数据,后续一个新行字符。WriteLine
向翻开的文本文件写一个或多个空缺行。WriteBlankLines
请考查示例代码,来了解怎样在FileSystemObject工具中利用Write、WriteLine和WriteBlankLines办法。
要封闭一个翻开的文件,则利用TextStream工具的Close办法。
请考查示例代码,来了解怎样在FileSystemObject中利用Close办法。
---------------------------------------------------------------
注重新行字符包括一个或几个字符(取决于操纵体系),以把光标挪动到下一行的入手下手地位(回车/换行)。注重某些字符串开端大概已有这个非打印字符了。
---------------------------------------------------------------
上面的VBScript例子树模了怎样翻开文件,和同时利用三种写办法来向文件增加数据,然后封闭文件:
SubCreateFile()
Dimfso,tf
Setfso=CreateObject("Scripting.FileSystemObject")
Settf=fso.CreateTextFile("c: estfile.txt",True)
写一行,而且带有新行字符。
tf.WriteLine("Testing1,2,3.")
向文件写三个新行字符。
tf.WriteBlankLines(3)
写一行。
tf.Write("Thisisatest.")
tf.Close
EndSub
这个示例树模了在JScript中怎样利用这三个办法:
functionCreateFile()
{
varfso,tf;
fso=newActiveXObject("Scripting.FileSystemObject");
tf=fso.CreateTextFile("c: estfile.txt",true);
//写一行,而且带有新行字符。
tf.WriteLine("Testing1,2,3.");
//向文件写三个新行字符。
tf.WriteBlankLines(3);
//写一行。
tf.Write("Thisisatest.");
tf.Close();
}
读取文件
要从文本文件读取数据,则利用TextStream工具的Read、ReadLine或ReadAll办法。下表形貌了分歧的义务应利用哪一种办法。
义务 办法
从文件读取指定命量的字符。 Read
读取一整行(一向到但不包含新行字符)。ReadLine
读取文本文件的全部内容。 ReadAll
请考查示例代码,来了解怎样在FileSystemObject中利用ReadAll和ReadLine办法。
假如利用Read或ReadLine办法,而且想跳过数据的特别部分,则利用Skip或SkipLine办法。read办法的了局文本存在一个字符串中,该字符串能够显现在一个控件中,也能够用字符串函数(如Left、Right和Mid)来剖析,毗连等等。
上面的VBScript示例树模了怎样翻开文件,和怎样写数据到文件中并从文件读取数据:
SubReadFiles
Dimfso,f1,ts,s
ConstForReading=1
Setfso=CreateObject("Scripting.FileSystemObject")
Setf1=fso.CreateTextFile("c: estfile.txt",True)
写一行。
Response.Write"Writingfile<br>"
f1.WriteLine"HelloWorld"
f1.WriteBlankLines(1)
f1.Close
读取文件的内容。
Response.Write"Readingfile<br>"
Setts=fso.OpenTextFile("c: estfile.txt",ForReading)
s=ts.ReadLine
Response.Write"Filecontents="&s&""
ts.Close
EndSub
上面的代码树模了在JScript中做一样的事:
functionReadFiles()
{
varfso,f1,ts,s;
varForReading=1;
fso=newActiveXObject("Scripting.FileSystemObject");
f1=fso.CreateTextFile("c: estfile.txt",true);
//写一行。
Response.Write("Writingfile<br>");
f1.WriteLine("HelloWorld");
f1.WriteBlankLines(1);
f1.Close();
//读取文件的内容。
Response.Write("Readingfile<br>");
ts=fso.OpenTextFile("c: estfile.txt",ForReading);
s=ts.ReadLine();
Response.Write("Filecontents="+s+"");
ts.Close();
}
挪动、复制和删除文件
FSO工具形式各有两种办法挪动、复制和删除文件,以下表所述。
义务 办法
挪动文件File.Move或FileSystemObject.MoveFile
复制文件File.Copy或FileSystemObject.CopyFile
删除文件File.Delete或FileSystemObject.DeleteFile
请考查示例代码,来了解在FileSystemObject中删除文件的两种办法。
上面的VBScript示例,在驱动器C的根目次中创立一个文本文件,向个中写一些信息,然后把它挪动到 mp目次中,并在 emp中做一个备份,最初把它们从两个目次中删失落。
要运转上面的示例,必要先在驱动器C的根目次中创立 mp和 emp目次:
SubManipFiles
Dimfso,f1,f2,s
Setfso=CreateObject("Scripting.FileSystemObject")
Setf1=fso.CreateTextFile("c: estfile.txt",True)
Response.Write"Writingfile<br>"
写一行。
f1.Write("Thisisatest.")
封闭文件。
f1.Close
Response.Write"Movingfiletoc: mp<br>"
猎取C的根目次(C:)中的文件的句柄。
Setf2=fso.GetFile("c: estfile.txt")
把文件挪动到 mp目次。
f2.Move("c: mp estfile.txt")
Response.Write"Copyingfiletoc: emp<br>"
把文件复制到 emp目次。
f2.Copy("c: emp estfile.txt")
Response.Write"Deletingfiles<br>"
取得文件以后地位的句柄。
Setf2=fso.GetFile("c: mp estfile.txt")
Setf3=fso.GetFile("c: emp estfile.txt")
删除文件。
f2.Delete
f3.Delete
Response.Write"Alldone!"
EndSub
上面的代码树模了在JScript中做一样的事:
functionManipFiles()
{
varfso,f1,f2,s;
fso=newActiveXObject("Scripting.FileSystemObject");
f1=fso.CreateTextFile("c: estfile.txt",true);
Response.Write("Writingfile<br>");
//写一行。
f1.Write("Thisisatest.");
//封闭文件。
f1.Close();
Response.Write("Movingfiletoc: mp<br>");
//猎取C的根目次(C:)中的文件的句柄。
f2=fso.GetFile("c: estfile.txt");
//把文件挪动到 mp目次。
f2.Move("c: mp estfile.txt");
Response.Write("Copyingfiletoc: emp<br>");
//把文件复制到 emp目次。
f2.Copy("c: emp estfile.txt");
Response.Write("Deletingfiles<br>");
//取得文件以后地位的句柄。
f2=fso.GetFile("c: mp estfile.txt");
f3=fso.GetFile("c: emp estfile.txt");
//删除文件。
f2.Delete();
f3.Delete();
Response.Write("Alldone!");
}
结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
页:
[1]