码迷,mamicode.com
首页 > Web开发 > 详细

前台JS(type=‘file’)读取本地文件的内容,兼容各种浏览器 二

时间:2014-12-15 13:47:36      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:activexobject   fileread   filesystemobject   

前台js读取本地文件内容方法:

1、IE用new ActiveXObject("Scripting.FileSystemObject")

2、其他用FileReader对象 html5的方法

说法不严谨,具体自己测试,复制以下代码保存为html直接可以运行。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<script>
//IE 10 以下中问可能会乱码 不能读utf-8格式的文本
function upload(input) {
	if (typeof window.ActiveXObject != 'undefined') {
		var file = input.value;
		var content = "";
		try {
			var fso = new ActiveXObject("Scripting.FileSystemObject");
			var reader = fso.openTextFile(file, 1);
			/*while (!reader.AtEndofStream) {
				content += reader.readline();
				content += "\n";
			}*/
			content = reader.readAll();
			reader.close();
		} catch (e) {
			alert("Internet Explore read local file error: \n" + e);
		}
		
		console.log(content);
		alert(content);
	} else {
		var file = input.files[0];
		filename = file.name.split(".")[0];
		var reader = new FileReader();
		reader.onload = function() {
			console.log(this.result)
			alert(this.result);
		}
		reader.readAsText(file);
	}
}
</script>
<title>file upload</title>
</head>
<body>
	<input type="file" onchange="upload(this)" />
</body>
</html>

希望对你有用。

前台JS(type=‘file’)读取本地文件的内容,兼容各种浏览器 二

标签:activexobject   fileread   filesystemobject   

原文地址:http://blog.csdn.net/xwq1012/article/details/41942013

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!