js如何读取文件夹文件

JavaScript0124

js如何读取文件夹文件,第1张

JS读写文件,分别如下:

//读文件

function readFile(filename){

var fso = new ActiveXObject("Scripting.FileSystemObject")

var f = fso.OpenTextFile(filename,1)

var s = ""

while (!f.AtEndOfStream)

s += f.ReadLine()+"\n"

f.Close()

return s

}

//读文件

function readFile(filename){

var fso = new ActiveXObject("Scripting.FileSystemObject")

var f = fso.OpenTextFile(filename,1)

var s = ""

while (!f.AtEndOfStream)

s += f.ReadLine()+"\n"

f.Close()

return s

}

//写文件

function writeFile(filename,filecontent){

var fso, f, s

fso = new ActiveXObject("Scripting.FileSystemObject")

f = fso.OpenTextFile(filename,8,true)

f.WriteLine(filecontent)

f.Close()

alert('ok')

}

不清楚你说的根目录是哪个根目录,JavaScript运行于浏览器沙盒模式中,无法和系统进行交互,所以你就别指望能直接获取物理计算机的磁盘目录了,如果是获取url的某曾目录,可以使用正则表达式匹配,或者检索字符串等等。

实例说明

BuildPath(路径,文件名) //这个方法会对给定的路径加上文件,并自动加上分界符

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

var newpath = fso.BuildPath("c:\\tmp", "51js.txt")//生成 c:\tmp\51js.txt的路径

alert(newpath)

-->

</SCRIPT>

CopyFile(源文件, 目标文件, 覆盖) //复制源文件到目标文件,当覆盖值为true时,如果目标文件存在会把文件覆盖

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bak")

-->

</SCRIPT>

CopyFolder(对象目录,目标目录 ,覆盖) //复制对象目录到目标目录,当覆盖为true时,如果目标目录存在会把文件覆盖

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\")//把C盘的Desktop目录复制到D盘的根目录

-->

</SCRIPT>

CreateFolder(目录名) //创建一个新的目录

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

var newFolderName = fso.CreateFolder("c:\\51JS")//在C盘上创建一个51JS的目录

-->

</SCRIPT>

CreateTextFile(文件名, 覆盖) //创建一个新的文件,如果此文件已经存在,你需要把覆盖值定为true

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

var newFileObject = fso.CreateTextFile("c:\\autoexec51JS.bat", true)//脚本将在C盘创建一个叫 autoexec51JS.bat的文件

-->

</SCRIPT>

DeleteFile(文件名, 只读?) //删除一个文件,如果文件的属性是只读的话,你需要把只读值设为true

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")//为了安全我先把要删除的autoexec.bat备份到你的D盘

var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bat")//把C盘的autoexec.bat文件删除掉

fso.DeleteFile("c:\\autoexec.bat", true)

-->

</SCRIPT>

DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\")//为了安全我先把你C盘的Desktop目录复制到你D盘的根目录

fso.DeleteFolder("c:\\WINDOWS\\Desktop", true)//把你的Desktop目录删除,但因为desktop是系统的东西,所以不能全部删除,但.........

-->

</SCRIPT>

DriveExists(盘符) //检查一个盘是否存在,如果存在就返会真,不存在就返回.......

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

hasDriveD = fso.DriveExists("d")//检查系统是否有D盘存在

hasDriveZ = fso.DriveExists("z")//检查系统是否有Z盘存在

if (hasDriveD) alert("你的系统内有一个D盘")

if (!hasDriveZ) alert("你的系统内没有Z盘")

-->

</SCRIPT>

FileExists(文件名) //检查一个文件是否存在,如果存在就返会真,不存在就返回.......

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

fileName = fso.FileExists("c:\\autoexec.bat")

if (fileName) alert("你在C盘中有autoexec.bat文件,按下确定后这个文件将被删除!")//开个玩笑:)

-->

</SCRIPT>

FolderExists(目录名) //检查一个目录是否存在,如果存在就返会真,不存在就返回.......

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

folderName = fso.FolderExists("c:\\WINDOWS\\Fonts")

if (folderName) alert("按下确定后系统的字库将被删除!")//开个玩笑:)

-->

</SCRIPT>

GetAbsolutePathName(文件对象) //返回文件对象在系统的绝对路径

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

pathName = fso.GetAbsolutePathName("c:\\autoexec.bat")

alert(pathName)

-->

</SCRIPT>

GetBaseName(文件对象) //返回文件对象的文件名

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

baseName = fso.GetBaseName("c:\\autoexec.bat")//取得autoexec.bat的文件名autoexec

alert(baseName)

-->

</SCRIPT>

GetExtensionName(文件对象) //文件的后缀

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

exName = fso.GetExtensionName("c:\\autoexec.bat")//取得autoexec.bat后缀bat

alert(exName)

-->

</SCRIPT>

GetParentFolderName(文件对象) //取得父级的目录名

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

parentName = fso.GetParentFolderName("c:\\autoexec.bat")//取得autoexec.bat的父级目录C盘

alert(parentName)

-->

</SCRIPT>

GetSpecialFolder(目录代码) //取得系统中一些特别的目录的路径,目录代码有3个分别是 0:安装Window的目录 1:系统文件目录 2:临时文件目录

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

tmpFolder = fso.GetSpecialFolder(2)//取得系统临时文件目录的路径 如我的是 C:\windows\temp

alert(tmpFolder)

-->

</SCRIPT>

GetTempName() //生成一个随机的临时文件对象,会以rad带头后面跟着些随机数,就好象一些软件在安装时会生成*.tmp

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

tmpName = fso.GetTempName()//我在测试时就生成了radDB70E.tmp

alert(tmpName)

-->

</SCRIPT>

MoveFile(源文件, 目标文件) //把源文件移到目标文件的位置

<SCRIPT LANGUAGE="JavaScript">

<!--

var fso = new ActiveXObject("Scripting.FileSystemObject")

var newpath = fso.MoveFile("c:\\autoexec.bat", "d:\\autoexec.bat")//把C盘的autoexec.bat文件移移动到D盘

-->

</SCRIPT>