js前端读写文件的方法(json、excel)
1、前端读取文件的实现
关键:利用文件上传对话框预览本地文件、利用FileReader读取文件
-
- 前端预览本地文件
<input tabindex="-1" id="select_range" data-input="false" class="font-small" type="file">
-
- 上传控件change事件利用FileReader读取文件
$('#select_range').change(function(evt){
var files = evt.target.files,
reader = new FileReader();
reader.onload = function(){
var range='XXXXXXXXXX';
};
reader.readAsText(files[0]);
});
注意:FileReader需要HTML5的支持,另外可以通过设置或采用filestyle将上传空间调整为button样式
2、前端保存文件
-
- HTML+JavaScript
<a href="javascript:void(0)" id="aa">保存</a>
function fake_click(obj) { var ev = document.createEvent("MouseEvents"); ev.initMouseEvent( "click", true, false, window, 0, 0, 0, 0, 0 , false, false, false, false, 0, null ); obj.dispatchEvent(ev); } //name-文件名;data-要保存的字符串。 function export_raw(name, data) { var urlObject = window.URL || window.webkitURL || window; var export_blob = new Blob([data]); var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a"); save_link.href = urlObject.createObjectURL(export_blob); save_link.download = name; fake_click(save_link); } //点击按钮 $('#aa').click(function() { var data=“要保存的文本”; export_raw('range.json', data); };
注意:http://www.w3.org/1999/xhtml
不要随便改