我有一个PHP脚本生成一个二进制文件(是某种地图的压缩,并不重要)。 我可以将它保存为图像并发送它。

我现在需要的是从该文件中创建一个字符串。 为了更清楚......我想得到这些位(当然忽略图像开销),最后的字符串必须是100101010101111 ......你明白了。

可以,如果是,我如何在JavaScript中执行此操作?

谢谢您的帮助。

===============>>#1 票数:4 已采纳

您可以进行AJAX调用以检索文件的内容,然后使用按位运算符生成您正在努力的二进制表示字符串。

当然,必须通过HTTP请求访问php脚本。

实现AJAX GET请求的最简单方法之一是使用jQuery.get ,您可以在这里阅读更多信息。

关于二进制表示的生成,有几种在线可用的实现。

我将自己的字符串示例实现编写为二进制转换器:

var data          = "h€llo world ";
var binary_string = "";

for (var idx in data) {
  var v = data.charCodeAt (idx);

  do {
    var b = v & 0xFF;

    for (var i =0; i < 8; ++i)
      binary_string += (b & (1<<(7-i))) ? '1' : '0';

    binary_string += ' ';

  } while (v >>= 8);
}

binary_string = 01101000 10101100 00100000 01101100 01101100 01101111 00100000 01110111 01101111 01110010 01101100 01100100 00100000

  ask by zozo translate from so

未解决问题?本站智能推荐:

1回复

读取Javascript中的二进制文件并制作二维码

我需要在网页中读取没有扩展名的文件,然后以QR码以二进制模式对该文件进行编码。 为了编码二进制文件,我找到了这个库,我觉得很好: https : //github.com/nayuki/QR-Code-generator/blob/master/javascript/qrcodegen.j
2回复

使用JavaScript从二进制文件中读取字节,而不使用jQuery

我正在尝试制作一个javascript模拟器,我希望它非常轻,所以我不想用jQuery和jDataView加载“ROM”。 我用纯JS制作了自己的ROM加载器。 它工作得很好(感谢本网站上的许多主题),但IE仍然存在问题,我在其他地方找不到任何帮助。 这是我的JS代码: 这
1回复

如何将PDF作为二进制文件传递给window.open()?

我正在使用Cordova / ionic构建一个应用程序,现在我可以在其中从API(我已通过身份验证)中获取PDF。 然后,我想在通常用window.open('http://example.com/the-file.pdf', "_blank", "location=no");打开的inAp
1回复

JS-html5文件阅读器API-以二进制字符串获取文件并通过ajax发送

我正在尝试获取文件的二进制字符串,但是正如我所看到的,我实际上无法执行操作,为什么readAsDataUrl可以工作,而readAsBinaryString却不能呢? 我把我的代码放在jsbin中的任何帮助表示感谢。 更新的jsbin
1回复

从二进制文件中识别数据类型

使用javascript,我想从看起来像这样的文件中读取数据: 这是什么数据类型? 它是8位无符号整数的集合吗?
1回复

JavaScript Bencode二进制长度

我正在尝试使用JavaScript解码torrent文件,但长度不好。 我在PHP中做过同样的事情,但长度有所不同。 我认为ajax方法不会返回二进制文件。 如何在JavaScript中获得与file_get_contents($ filename,FILE_BINARY)
2回复

在Ajax中显示文件的二进制代码

我想显示音乐文件的二进制代码。 但是下面的代码似乎不起作用。 有什么建议么??
1回复

为什么PHP发送二进制0x2EF5但Javascript接收0x2EFD?

我的PHP读取了一个二进制文件并将其传输到Javascript客户端。 不幸的是,我的解析错误。 例如,十六进制值2EF5被处理像2EFD。 PHP JAVASCRIPT
2回复

在JS中创建二进制blob

我正在生成一个文件客户端,我有十六进制的数据,只是想让用户下载生成的文件。 生成的文件是包含ASCII格式的十六进制数据的纯文本文件。 如何强制Blob按原样包含二进制数据而不是文本?
1回复

3D打印JS切片器(SLAcer.js)的二进制处理

介绍 大家好,我目前正在使用基于JavaScript的3d切片工具(SLAcer.js-很棒的工作),它可以为我的廉价dlp打印机(SparkMaker)生成方便的打印文件。 打印文件由一些G代码和简单的二进制图层/图像组成(请参阅此处 )。 我已经能够生成G代码和包含二进制层相关