【发布时间】:2013-09-19 14:53:15
【问题描述】:
我想知道如何使用 FileReader 对象检索保留特殊字符的文件的内容。
<form enctype="multipart/form-data">
<input type="file" id="file" name="file">
</form>
<script>
$('#file').change(function () {
var file = document.getElementById('file').files[0];
var reader = new FileReader();
reader.onload = function (event) {
var file_content = event.target.result;
console.log(file_content);
}
reader.readAsBinaryString(file);
}
</script>
这段代码打印
"line1line2"
除了我的文件内容是
line1
line2
我怎样才能得到?
line1\nline2
我尝试了 readAsBinaryString 和 readAsText 方法,但没有成功。难道我做错了什么 ? 谢谢
编辑:
JSfiddle 上的一个例子http://jsfiddle.net/yTgp7/
该问题仅存在于 mac Os X 上的 Firefox 上
【问题讨论】:
-
你在哪里输出你的内容 - 只是为了控制台,如果是的话,你使用的是哪个浏览器?我在 Windows(\r\n 行尾)和 Unix(\n)机器上都试过这个,并且文件被正确读取。
-
@AdrianWragg 我在 Mac OS X 上使用 Firefox 23.0.1。我会尝试其他浏览器
-
这里有一个 jsfiddle jsfiddle.net/yTgp7
-
抛出一个带有换行符的警报(实际上是双换行符)。 Chrome 29,Windows 8。
-
我的测试表明该错误仅出现在 OS X 上的 Firefox 上
标签: javascript html filereader