JavaScript:从图像中删除字节(base64 字符串)



我在SAP Web IDE中使用Northwind Service。此服务中的图像以base64字符串格式存储:FRwvAAIAAAAN....

发现我不能使用给定的 base64 字符串值直接在我的应用程序中使用这些图像,因为罗斯文数据库很旧并且在 MS Access 中制作,并且有 78 个冗余字节代表 OLE 标头。所以我想从 base78 字符串中删除这 64 个字节。

你能帮帮我吗,使用JavaScript语言(我是这种语言的新手)。我希望你们专家。这是我所做的:

我创建了函数:

photo : function (value) { var str = ""; for (var p in value) { if (value.hasOwnProperty(p)) { str += value[p]; } } ..........

使用此功能,我将base64 Sting作为导入参数。我将导入参数从对象转换为字符串。

那么接下来我应该怎么做呢?创建数组或其他东西?如何从字符串中删除 78 字节?

在 base64 中,每个字符包含 6 位信息,因此 4 个字符包含 24 位信息,即 3 个字节。

你很幸运。由于 78 恰好被 3 整除,因此前 78 个字节正好对应于前 104 个字符(78 字节 = 624 位 = 104 个字符)。

因此,若要删除 base64 字符串的前 78 个字节,请删除前 104 个字符:

s = s.substr(104);

(如果你没有那么幸运,你将不得不将整个字符串解码为字节,删除前 78 个字节,再次将字节编码为字符串。

最新更新