Js访问本地文件

本文介绍如何利用JavaScript实现对本地Excel文件的读取与写入操作,包括使用ActiveXObject创建对象访问Excel应用程序,以及通过File.Delete()等函数进行文件管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
 <title>Excel Test</title>
<script language="javascript">
function readEx() {
var ExcelSheet ;
var wb;
try {
  //alert("GetAppVersion() start");
  ExcelSheet     = new ActiveXObject("Excel.Application");
  alert(ExcelSheet .Version);
// read start
// wb = ExcelSheet.Workbooks.open("d:\\test.xls");
  wb = ExcelSheet.Workbooks.open("http://10.1.1.143:8080/canon_sample/data/test.xls");
  var objsheet =  wb.Worksheets("Sheet1");
  var v = objsheet.cells(1,1);
  alert("cells(1,1) = " + v);
  ExcelSheet.Save();
// read end 
// 使EXCEL窗口可见
  ExcelSheet.Visible = true;
 }
 catch(e) {
 if (ExcelSheet != undefined){
  alert('Error happened : ' + e);
  ExcelSheet.Quit();
 }
  return '';
 }
 }
function writeEx() {
var ExcelSheet ;
var wb;
//alert("write() start");
try {
  ExcelSheet     = new ActiveXObject("Excel.Application");
  //alert(ExcelSheet .Version);
// write start
  ExcelSheet.Visible = true;
  ExcelSheet.Workbooks.Add();
  ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";
  ExcelSheet.SaveAs("c:\\TEST.XLS");
// write end
  ExcelSheet.Quit(); 
 }
 catch(e) {
    if (ExcelSheet != undefined){
  alert('Error happened : ' + e);
  ExcelSheet.Quit();
 }
  return '';
 }
 }
 </script>
</head>
<body>
<b>
Excel Test
</b>
<br><br>
<input type="button" onclick="readEx();" value=" Read "/> 
<input type="button" onclick="writeEx();" value=" Write "/>
</body>
</html>


2.JS读取本地excel文件

<script>
function ReadExcel()
{
     var tempStr = "";
     var filePath= document.all.upfile.value;
     var oXL = new ActiveXObject("Excel.application"); 
     var oWB = oXL.Workbooks.open(filePath);
     oWB.worksheets(1).select(); 
     var oSheet = oWB.ActiveSheet;
     try{
      for(var i=2;i<46;i++)
      {
       if(oSheet.Cells(i,2).value =="null" || oSheet.Cells(i,3).value =="null" )
        break;
       var a = oSheet.Cells(i,2).value.toString()=="undefined"?"":oSheet.Cells(i,2).value;
       tempStr+=("  "+oSheet.Cells(i,2).value+
        "  "+oSheet.Cells(i,3).value+
        "  "+oSheet.Cells(i,4).value+
        "  "+oSheet.Cells(i,5).value+
        "  "+oSheet.Cells(i,6).value+"/n");
      }
     }catch(e)
     {
          document.all.txtArea.value = tempStr;
     } 
     document.all.txtArea.value = tempStr;
     oXL.Quit();
     CollectGarbage();
}
</script>
<html>
<input type="file" id="upfile" /><input type="button" onclick="ReadExcel();" value="read">
<br>
<textarea id="txtArea" cols=50 rows=10></textarea>
</html>



请问JS可否读写浏览器本地硬盘上的文件?

JS规范上写着:JS是一个安全性的语言。不能访问本地硬盘。但它又提供了这样几个函数,通过以Scripting.FileSystemObject为参数调用ActiveXObject()方法来创建对象对文件进行操作。
如File.Delete()

<html>
<body>
<script language ="JScript">
function remove()
{
var my object;
myObject = new ActiovXObject("Scripting.FileSystemObject");
var f = myObject.GetFile("c: / / mytest.txt");
f.Delete();
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值