如何访问客户端计算机上的文件

时间:2015-05-23 13:06:26

标签: javascript file

我有几个客户端将使用我的网站,我希望每个客户端都有自己的“配置”文件(EX:一台计算机的位置= 1,另一台计算机的位置= 2)。我想使用我放在客户端计算机上的文件来执行此操作,然后当他们访问网站时,客户端会在自己的计算机上查找,并根据该文件中的内容确定要加载的内容。此文件可以是CSV文件,纯文本文件,也可以是此文件所需的任何其他类型的文件。

在线查看所有我见过的文件上传器。我不希望他们必须选择文件,只需加载文件内容并调用javascript函数。

文件示例

Location=1
AnswerToQuestion=42

和另一个文件

Location=2
AnswerToQuestion=15

和我的JS功能

var setAnswerToQuestion = function(answer){
  locationConfig.setAnswer(answer)
}

2 个答案:

答案 0 :(得分:3)

看看localstorage。它是一个持久的键/值系统,浏览器实现为您的网站/ webapp保存数据。

基本原则:

设置变量:

localStorage.setItem('answer_1', '42');

获取变量:

localStorage.getItem("answer_1");

我想如果你有很多答案,你最终会得到一个像这样的数组/对象:

var answers = [42, 15];

寻求解决方案:

您可以使用JSON.stringify

存储和检索该内容
localStorage.setItem('answers', JSON.stringify(answers));

var answers = JSON.stringify(localStorage.getItem('answers'));

受过教育

Smashing Magazine有一个教程here
深入了解HTML5有一个教程here

答案 1 :(得分:1)

如果不使用“文件上传”,则无法访问本地计算机上的文件。您可以将配置文件存储在浏览器localstorage上:

var getConfigData = function() {
    return JSON.parse(localStorage.getItem('config'));
}

var saveConfigData = function(config) {
    localStorage.setItem('config', JSON.stringify(config));
}

var addDataToConfig = function(key, value) {
    var config = getConfigData();
    config[key] = value;
    saveConfigData(config);
}

var config = {
    Location: 1,
    AnswerToQuestion: 42
};

// save new config
saveConfigData(config);

// add new data to config
addDataToConfig('name', 'John Doe');
相关问题