zoukankan      html  css  js  c++  java
  • HTML js实现修改本地文件内容(windows)

    工作过程中, 不时的需要修改配置文件的内容,比如 设置访问服务器地址.因此需要逐层打开目录,来进行修改. 如果修改频繁,则会比较麻烦,因此需要一个脚本来进行修改.

    但是,

    var fso =new ActiveXObject("Scripting.FileSystemObject");
    只限于IE浏览器, 所以以下代码只适用于IE浏览器

    参考目录: 

    <html>
    <head>
        
        <title>修改ip</title>
        
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script language="JavaScript" type="text/javascript">
    
            // 需要修改的文件      var baseReal = "E:\win32\src\common\GameConfig.lua";
            // 定义一个临时文件
    var baseTemp = "E:\win32\src\common\GameConfig2.lua";
            // 设置被替换的内容
    var beanChange1 = "GameConfig.strHallIp = ip1"; var beanChange2 = "GameConfig.strHallIp = ip2"; var beanChange3 = "GameConfig.strHallIp = ip3"; var beanChange4 = "GameConfig.strHallIp = ip4"; var beanChange5 = "GameConfig.strHallIp = ip5";    function setServerIp(num){     var ForReading = 1, ForWriting = 2;      var fso =new ActiveXObject("Scripting.FileSystemObject");             // 创建一个临时文件       var fTemp = fso.CreateTextFile(baseTemp, true);
                // 以写入的方式进行文件打开       
    var f233 = fso.OpenTextFile(baseReal, ForReading, true);       var content1;        while(!f233.AtEndOfStream){        content1=f233.ReadLine();        fTemp.WriteLine(content1);        }        f233.Close();        fTemp.Close();        var fdelete3 = fso.GetFile(baseReal);        // 删除文件        fdelete3.Delete();           var fnew = fso.CreateTextFile(baseReal, false);        fTemp = fso.OpenTextFile(baseTemp, ForReading, false);          var content1;          var hasChange = false;          while(!fTemp.AtEndOfStream){          content1 = fTemp.ReadLine();          if(!hasChange && (content1 == beanChange1 ||content1 == beanChange2              ||content1 == beanChange3              ||content1 == beanChange4              ||content1 == beanChange5          )){            fnew.WriteLine(getContent(num));            hasChange = true;          }else{            fnew.WriteLine(content1);          }         }         fnew.Close(); fTemp.Close(); var fdelete2 = fso.GetFile(baseTemp); fdelete2.Delete(); } function getContent(num){ switch(num){ case 1: return beanChange1; case 2: return beanChange2; case 3: return beanChange3; case 4: return beanChange4; case 5: return beanChange5; } } </script> </head> <body>   <div style="display: ;" id= "div1" >     <input id="button1" type="button" onclick="setServerIp(1)" value="IP1">   </div>   <br/>   <div style="display: ;" id= "div2" >     <input id="button1" type="button" onclick="setServerIp(2)" value="IP2">   </div>   <br/>   <div style="display: ;" id= "div3" >     <input id="button1" type="button" onclick="setServerIp(3)" value="IP3">   </div>   <br/>   <div style="display: ;" id= "div4" >     <input id="button1" type="button" onclick="setServerIp(4)" value="IP4">   </div>   <br/>   <div style="display: ;" id= "div5" >     <input id="button1" type="button" onclick="setServerIp(5)" value="IP5">   </div> </body> </html>
  • 相关阅读:
    Linux常用命令,touch命令,vi和vim命令,文件查看命令,文本处理命令,备份压缩命令,网络与磁盘命令,软件安装命令
    Linux命令整理,用户管理命令,用户组管理命令,系统管理命令,目录管理常用命令
    单元测试基本步骤?单元测试三个常用注解?日志体系结构和log4j,Log4j三个核心?
    cookies,sessionStorage 和 localStorage 之间有什么区别?
    filter() 、find()、findIndex()
    设置多行文本隐藏显示省略号时样式丢失了
    react 中封装一个简单的滚动条组件
    react-router-cache-router
    浅谈React 中 Component与PureComponent如何使用
    React.Fragment
  • 原文地址:https://www.cnblogs.com/xiaozhuan/p/6396584.html
Copyright © 2011-2022 走看看