2014-10-20 153 views
0

我有一个下载的CSV文件,我想解析并用它为每条记录创建JSON对象。该文件位于本地计算机上,但我已阅读过JavaScript的安全措施,以防止访问这些文件。用jQuery读取CSV文件

一些例子显示使用csv.js下列要求:

$.ajax({ 
url: "G:\downloaded_files\filename.csv", 
aync: false, 
success: function (csvd) { 
    csv_as_array = $.csv.toArrays(csvd); 
}, 
dataType: "text", 
complete: function() { 
    // use the array of arrays (variable csv_as_array) 
    // for further processing 
} 
}); 

运行此,它只是会在控制台的GET请求。我在这里不熟悉的领域,所以任何解释都会很棒。

如果我是这样使用Ruby我会做这样的事,希望这会给你什么,我想实现的指示:

require 'csv' 

class FileRead 

csv_text = File.read('/home/richardlewis/Downloads/csvtest.csv') 
csv = CSV.parse(csv_text, headers: true) 
    csv.each do |row| 
    hash = row.to_hash 
    puts(hash) 
end 

我希望这使得感觉和某人可以指引我正确的方向。

回答

2

您不能使用Ajax或任何方式从Web浏览器调用本地文件(来自硬盘)。你将不得不使用某种服务器发布你的文件。如果你使用Linux,你应该已经安装了Apache服务器。

您需要一个REST服务,它将以某种格式返回您的文件。 JSON是最好的,因为它很容易在前端处理JSON数据。

它应该是这样的:

$.ajax({ 
url: "http://localhost:8080/services/rest/get_file", // your rest address 
... 
}); 
+1

*您威力*有一个Apache服务器安装,这取决于你使用的分布。 – 2014-10-20 19:18:14