使用HTA写入文本文件

时间:2013-01-14 18:49:11

标签: hta

我正在尝试创建一个允许用户将数据添加到文本文件的HTA文件。我在该地区相当缺乏经验。

我需要完成一些事情:

  1. 写入输入到文本文件(我的代码所做的)的数据位
  2. 让用户从可用文件的下拉列表中选择要写入
  3. 如果可以在onClick上提交数据或按Enter键
  4. ,那就太好了
  5. 清除提交
  6. 上的字段
  7. 记录每个条目。不覆盖文本文件中的数据(我的代码覆盖)
  8. 示例:

    123
    456个
    789个

    如果我的代码看起来不稳定,我道歉。

    任何帮助或建议都将不胜感激。

    谢谢。

    <html><head>
    <SCRIPT LANGUAGE="VBScript">
    
        Sub Window_onLoad
            window.resizeTo 480,150
        End Sub 
    
    </SCRIPT>
    <script language="javascript">
    function Writedata()
    {
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var write_id;
    write_id = document.getElementById('write_id').value ;
    alert('The data has been written to \n' + write_id);
    var s = fso.CreateTextFile(write_id, true);
    
    s.WriteLine(document.getElementById('name_id').value);
    
    s.Close();
    }
    </script>
    </head>
    <body>
    
    <table>
    <tr>
    <td>Input: </td>
    <td><input type="text" name="name" value="" id="name_id"></td>
    <td><select><option name="write" value="C:\temp\test1.txt" id="write_id">Option1</option>    </select></td>
    <td><input type="button" onclick="Writedata()" value="submit"></td>
    </tr>
    </table>
    
    </body>
    </html>
    

1 个答案:

答案 0 :(得分:3)

看起来您已经编辑了代码。虽然它可以更灵活:

var s = fso.CreateTextFile(write_id, true);或许更确切地说:

var s = fso.OpenTextFile(write_id, 2, true);

其中2表示字节码: 1 =读取,2 =写入,8 =追加。

write_Id应包含文件的完整路径,例如D:/Foldername/filename.txt


这不是你应该如何使用select,而是像id这样给select本身:{/ p>

<select id="write_id">
    <option value="C:\temp\test1.txt">Option1</option>
</select>

现在,所选option的值也会存储为select的值,您可以在脚本中读取,就像现在一样。

你也可以在JS中声明一个变量并一起赋值:

var write_id = document.getElementById('write_id').value;