![](/img/trans.png)
[英]Migrate FileReader ReadAsBinaryString() to ReadAsArrayBuffer() or ReadAsText()
[英]Difference between readAsDataURL() and readAsArrayBuffer() and readAsText() in JavaScript FileReader
我找到了一个图像上传预览代码,我很困惑FileRead()
什么?
var openFile = function(event) {
var input = event.target;
var reader = new FileReader();
reader.onload = function() {
var dataURL = reader.result;
var output = document.getElementById('output');
console.log(dataURL)
output.src = dataURL;
};
reader.readAsDataURL(input.files[0]);
};
.readAsDataURL()
返回表示文件数据的URL作为base64编码的字符串
.readAsArrayBuffer()
返回表示文件数据的ArrayBuffer
.readAsText()
将文件的数据作为文本字符串返回。
有关详细信息,请查看此 FileReader
文档。
readAsDataURL()
将返回一个字符串,该字符串可以粘贴到HTML标记的url属性中(例如: src=
in img)。 对于img
标记,它将有效地显示图像,就像src
是读取的文件的地址一样。 它是原始文件内容的转换(更大)。
readAsText()
将返回一个字符串,这些字符可以由JavaScript函数解析或显示在textarea中,并且可能被用户理解。 这通常用于读取文本文件。
我想如果您想要一个文件上传功能,然后向用户显示他们从PC中选择并即将上传的文件的预览,那么请使用.readAsDataURL()
。
如果要操作文本文件,请使用.readAsText()
如果你想操纵像图像(例如将jpeg转换为PNG),那么使用.readAsArrayBuffer()
。
第四种方法是.readAsBinaryString
,但Mozilla文档建议使用.readAsArrayBuffer()
代替。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.