- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 filereader API通过使用 readAsDataURL 读取文件,可以显示文件的预览。
我想做的是:
执行步骤 3 可以通过使用 readAsBinaryString 重新读取文件来完成,但这看起来有问题,因为数据可能已经在磁盘上消失或更改。所以我想要的是将从 readAsDataURL
返回的数据转换为 readAsBinaryString
返回的格式。我该怎么做?
另一种方法是将数据提交给 readAsDataURL
返回的后端,但我想避免这种情况,因为在我的情况下,这需要对后端进行特殊处理。
最佳答案
赞CBroe said,你不需要读取文件两次。
JS:
handleFileSelectThumbFile(evt){
var files = evt.target.files;
var file = files[0];
// You can get the mime type like this.
var thumbMIME = files[0]['name'].split('.').pop();
if (files && file) {
var reader = new FileReader();
reader.onload = function(readerEvt) {
// Split the readerEvt.target.result by a ','.
// You can send the binaryString variable to the server.
// Its base64 encoded already.
var binaryString = readerEvt.target.result.split(',')[1];
// Set the image preview to the uploaded image.
$('.img-preview').prop('src', readerEvt.target.result);
}.bind(this);
reader.readAsDataURL(file);
}
}
HTML:
<input type="file" onChange={this.handleFileSelectThumbFile} required/>
<img src='http://placehold.it/300' class='img-preview'/>
您也可以从 readerEvt 的第一部分读取 MIME 类型。看CBroe上面的评论。
关于javascript - 将图像从 readAsDataURL 转换为 readAsBinaryString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18960187/
这是我的代码: var reader = new FileReader(); reader.onload = function(e) { download(reader.result, "Te
您好,我正在使用 javascript 上的文件 API 制作我的第一个项目,这是一个简单的程序,它将文件作为输入并在 Div 上显示其内部代码。我想知道是否有办法让这段代码在没有事件监听器和事件处理
尝试使用 fileReader.readAsBinaryString 通过 AJAX 将 PNG 文件上传到服务器,精简代码(fileObject 是包含我文件信息的对象); var fileRead
我想将图像以二进制形式保存到用户本地主机以供将来引用,然后在以后从该二进制文件生成一个 dataurl,问题是,它不起作用。 var reader = new FileReader(); reader
我有一个以下格式的文件: utf-8 encoded text block separator binary data block 我使用 JavaScript 的 FileReader 使用 将文件
使用 filereader API通过使用 readAsDataURL 读取文件,可以显示文件的预览。 我想做的是: 用户选择一个文件 显示预览,以便用户获得一些反馈。 如果用户满意,他将数据提交到后
我目前正在关注this tutorial用于从 javascript 将图像上传到 Google Drive。该示例代码运行良好,您可以选择要从硬盘上传的文件。我现在尝试根据我的目的修改它,以便它以标
似乎readAsBinaryString ,JavaScript FileReader 对象的方法,在 IE10 中不受支持。我已按照 this HTML5 Rocks article 中的建议尝试了
本页http://www.html5rocks.com/en/tutorials/file/dndfiles/如果您向下滚动到示例“示例:切片文件。试试吧!”您将看到使用 readAsBinarySt
我正在使用 reader.readAsArrayBuffer() 将文件发送到 node.js,以便我可以将其保存在/public 文件夹中。 reader.readAsArrayBuffer(eve
如果有输入类型文件 和一张图片 如果选择了一个文件,我想从图像中读取 Exif 数据并将其加载到 img 标签中。 var $inputFile = $("#file"); $inputFile.
简而言之,我想将图像的二进制数据发送到我的处理程序,该处理程序将作为字节数组保存在数据库中。在我的 Javascript 中使用 readAsBinaryString(f) 读取文件输入的值,我将得到
完整代码在 https://gist.github.com/992562 . 我正在使用 HTML 文件 API 并通过拖放将文件通过 XHR post 上传到 PHP 脚本。在程序上,一切似乎都正常
文件读取器。 readAsBinaryString()返回 UTF-8 编码的二进制字符串。我如何才能获取作为一系列 Unicode 转义序列 (\uxxxx) 的数据? 最佳答案 FileReade
以下代码适用于 Chrome 浏览器。 $('#file').change(function(e) { var fileReader = new FileReader(), f
如何等到onload事件完成 function(){ var filedata=null; reader.onload=function(e){ filedata=e.target.resul
举个例子,当我使用 FileReader API 从文件中读取 π 字符 (\u03C0) 时,当我使用 FileReader 读取它时,我会将 pi 字符返回给我.readAsText(blob)
有没有办法将 HTML Canvas 的内容读取为二进制数据? 目前我有以下 HTML 来显示输入文件和它下面的 Canvas : Get Image Content Input: Canvas 然后
我正在尝试解析 xls 文件,请参见下面的文件 https://filebin.net/jm37356p8nkzgycm 获取错误 无法在“FileReader”上执行“readAsBinaryStr
在 HTML5 中,引入了 FileReader API。我无法真正理解 readAsBinaryString() 和 readAsDataURL() 之间的区别。我从几个地方阅读了文档,但仍然无法完
我是一名优秀的程序员,十分优秀!