ZK中使用JS读取客户端txt文件内容问题

最近写一个需求时遇到一个问题,用户需要通过点击一个按钮直接读取他自己电脑上D盘的一个txt文件内容显示到页面,因为项目现在是用ZK写的.我对于ZK也是刚刚了解不就,很多都还不是很熟.起初我是想用io流去读取,然后写完发现,这样每次读取的都是服务器上的D盘下的txt文件,所以在网上找了很久.很多都是获取服务器上的文件夹或者是上传到服务器再读取.直接通过文件地址读取文件内容很少.因为这样很不安全.目前我也只找到了一种,但是只限于IE浏览器.

 <?page title="new page title" contentType="text/html;charset=UTF-8"?>
<zk>
<window title="ZK中使用JS读取客户端txt文件内容问题" border="normal">
  <button label="点击获取txt内容" id="butt"/>
  <label id="filePath" value="D:\\test.txt" style="display:none"/>
  <separator/>
  <label id="info" style="color:red"/>
  <script><![CDATA[
   zk.afterMount(function(){
    jq("$butt").click(function(){
      try{
        var fs =new ActiveXObject("Scripting.FileSystemObject");
     }catch(e){
        alert("浏览器不兼容,安全级别太高,无法读取,请使用IE浏览器打开!");
     }
        var ts,s;
       var str = "";
       var ForReading = 1;
        //文件路径,这里是写死在label
        var path = jq("$filePath").text();//这里用 .val()获取不到值,毕竟不是jsp
      //读取文件的内容。
      ts = fs.OpenTextFile(path,ForReading,true);
      while(!ts.AtEndOfStream){
        s = ts.ReadLine();
        str+=s;
      }
      ts.Close();
      jq("$info").text(str);
     });
   });
  ]]></script>
</window>
</zk>

因为ActiveX是IE流量器的插件,所以这个只能在IE浏览器可用.如果你发现IE浏览器也没出来,那你可能是ActiveX插件相关功能没开,需要在IE浏览器进行如下设置

然后就出来了,但是这样网也就会提示 存在安全风险,没办法,这种操作本来就是不安全的行为.其他浏览器,目前我只知道必须用户通过手动选择文件后在读取文件内容,没发现能通过文件路径直接去读取客户端电脑上的文件.如果哪位大神知道,可以分享给我哦.

总结

以上所述是小编给大家介绍的ZK中使用JS读取客户端txt文件内容问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

(0)

相关推荐

  • Node.js中的http请求客户端示例(request client)

    Node.JS有一个request模块,可以很方便的抓取网页内容.最简单的一个示例: var request = require('request'); request('http://www.google.com', function (error, response, body) { if (!error && response.statusCode == 200) { console.log(body); } }) 由上例可以看出用request发起一个http请求确实非常简单,不过

  • js 客户端打印html 并且去掉页眉、页脚的实例

    print() 方法用于打印当前窗口的内容,支持部分或者整个网页打印. 调用 print() 方法所引发的行为就像用户单击浏览器的打印按钮.通常,这会产生一个对话框,让用户可以取消或定制打印请求. win10下测试ie11.chrome.firefox.360.edge 都可以成功去掉页眉页脚: <!DOCTYPE html> <html> <head> <title>打印</title> <meta charset="utf-8

  • nodejs socket服务端和客户端简单通信功能

    本文实例讲述了通过node.js的net模块实现nodejs socket服务端和客户端简单通信功能,可以用作客户端对服务端的端口监听以及事件回执. server端代码 var net = require('net'); //模块引入 var listenPort = 8080;//监听端口 var server = net.createServer(function(socket){ // 创建socket服务端 console.log('connect: ' + socket.remoteA

  • Node.js发送HTTP客户端请求并显示响应结果的方法示例

    本文实例讲述了Node.js发送HTTP客户端请求并显示响应结果的方法.分享给大家供大家参考,具体如下: wget.js:发送HTTP客户端请求并显示响应的各种结果 options对象描述了将要发出的请求. data事件在数据到达时被触发,error事件在发生错误时被触发. HTTP请求中的数据格式通过MIME协议来声明,例如,提交HTML表单时它的Content-Type会被设置成multipart/form-data. 要在HTTP客户端请求中发送数据,只需调用.write方法并写入符合规范

  • NodeJS实现客户端js加密

    思路: 服务端渲染业务代码js => 前后端约定加密算法 => 业务代码进行签名 => 客户端解密业务代码 => eval 执行 Node 路由示例: /** * 请自定义 restful API 这里以 GET 为例 * @param {req} * @param {res} * @return {next()} */ //var util = require('utility'); exports.encryption = function(req, res){ //GET v

  • ZK中使用JS读取客户端txt文件内容问题

    最近写一个需求时遇到一个问题,用户需要通过点击一个按钮直接读取他自己电脑上D盘的一个txt文件内容显示到页面,因为项目现在是用ZK写的.我对于ZK也是刚刚了解不就,很多都还不是很熟.起初我是想用io流去读取,然后写完发现,这样每次读取的都是服务器上的D盘下的txt文件,所以在网上找了很久.很多都是获取服务器上的文件夹或者是上传到服务器再读取.直接通过文件地址读取文件内容很少.因为这样很不安全.目前我也只找到了一种,但是只限于IE浏览器. <?page title="new page tit

  • JS如何通过FileReader获取.txt文件内容

    目录 JS通过FileReader获取.txt文件内容 读取.txt文件方法 JS: FileReader()读取文件 下面开始实际例子 读取txt文件 读取图片文件 JS通过FileReader获取.txt文件内容 最近处理一个需求是,通过js解析.txt文件来做一些处理,在这里做一些总结. 读取.txt文件方法 var reader = new FileReader(); var fileUploader = document.getElementById("fileUploader&quo

  • Java读取TXT文件内容的方法

    Java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 既然你使用了FileInputStream().那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据 解读完成后要输出

  • c语言读取txt文件内容简单实例

    在C语言中,文件操作都是由库函数来完成的. 要读取一个txt文件,首先要使用文件打开函数fopen(). fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen(文件名,使用文件方式) 其中,"文件指针名"必须是被说明为FILE 类型的指针变量,"文件名"是被打开文件的文件名. "使用文件方式"是指文件的类型和操作要求."文件名"是字符串常量或字符串数组. 其次,使用文件读写函数读取文件. 在C语言中提供

  • Java如何实现读取txt文件内容并生成Word文档

    目录 导入Jar包 1. Maven仓库下载导入 2. 手动导入 读取txt生成Word 注意事项 本文将以Java程序代码为例介绍如何读取txt文件中的内容,生成Word文档.在编辑代码前,可参考如下代码环境进行配置: IntelliJ IDEA Free Spire.Doc for Java Txt文档 导入Jar包 两种方法可在Java程序中导入jar文件 1. Maven仓库下载导入 在pom.xml中配置如下: <repositories> <repository> &l

  • 读取TXT文件内容的方法

    复制代码 代码如下: using System;  using System.Collections;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Web;  using System.Web.SessionState;  using System.Web.UI;  using System.Web.UI.WebControls;  using System.Web.

  • 通过Javascript读取本地Excel文件内容的代码示例

    读取本地Excel文件内容的Javascript代码: 复制代码 代码如下: <script type="text/javascript">function read_excel(){ var filePath="D:\abcd9.com.xls"; //要读取的xls    var sheet_id=2; //读取第2个表    var row_start=3; //从第3行开始读取    var tempStr='';    try{       

  • Python 3.6 读取并操作文件内容的实例

    所使用python环境为最新的3.6版本 Python中几种对文件的操作方法: 将A文件复制到B文件中去(保持原来格式) 读取文件中的内容,返回List列表 (加载本地词典库) 读取文件,返回文件内容 #!/usr/bin/env python # encoding: utf-8 """ @author: wugang @contact: 752820344@qq.com @software: PyCharm @file: toolkits_file.py @time: 20

  • C++将txt文件内容保存到数组的方法

    代码如下: #include<iostream> #include<fstream> //必要头文件 using namespace std; int main() { int a[9][9]; fstream in("E://C//LQB_04data.txt"); //""中是txt文件路径,注意:路径要用//隔开 cin.rdbuf(in.rdbuf()); //将输入信息从控制台转向txt文件 for(int i=0;i<9;i

  • python如何将两个txt文件内容合并

    本文实例为大家分享了python将两个txt文件内容合并的具体代码,供大家参考,具体内容如下 分析: 先分别将两个文件中的内容读入列表中,再将列表分割 把不同属性的数据放到单独的列表中 分开存储  name tel  email 然后遍历列表查找重合的姓名. 利用字符串方法join() 将 三个属性合并,然后保存在临时列表 最后将新的列表变量写入新文件中 file1 = open("name,tel.txt", "rb") file2 = open("na

随机推荐