2

我有带有 ENCTYPE="multipart/form-data" 的 html 表单。它只包含从本地框中浏览文件的“文件”类型的文本框。这是文本框代码片段

<td>
    <input name="fileNameAttr" id="filePath" size="52" type="file" value="">
</td>

我从本地框中浏览文件一些图像文件。在我选择文件的那一刻,filePath 会填充到文本框中。现在单击某个按钮,我想将图像转换为 javascript 中的 base64 字符串。我没有使用 HTML5。我可以在javascript中实现它吗?

我可以在网上看到一些使用 HTML5 的解决方案,但这并不能解决我的目的。如果我需要使用一些第三方实用程序,我可以这样做。

编辑:-看起来 jquery 可以帮助 $.base64.encode("this is a test"); 但是如何将它与 type="file" 一起使用?

4

2 回答 2

3

这可以通过 HTML5 来<canvas>完成

或者

如果你有 node.js 作为一个选项,那么在 img 中尝试类似的东西

或者<img src="data:image/png;base64,jkasfhsdjkhsadf" />

例子

var fs = require('fs');
var base64_data = new Buffer(fs.readFileSync('sample.png')).toString('base64');
console.log('<img alt="sample" src="data:image/png;base64,' + base64_data + '">');

检查这个(也是例子的来源)

数据 URI 方案

好读

  1. 如何使用 Javascript 编码为 Base64?//它的图像
于 2012-10-23T15:42:46.467 回答
1

如果您可以通过 javascript 访问本地文件系统,什么会阻止您读取密码文件或其他私人数据?

由于显而易见的原因,这是您不能做的,将来也不会被允许!

于 2012-10-23T15:44:09.560 回答