3

如何使用 Gwt 客户端代码将 base64 字符串转换为字节数组?

此链接显示编码解码,用于 base64 但不是字节 [] 数组

https://snipt.net/tweakt/gwt-base64/

4

2 回答 2

7

你有两个选择:

1-使用原生JS方法btoaatob,并将返回的字符串转换为javabyte[]数组:

 native String btoa(String b64) /*-{
    return btoa(b64);
 }-*/;
 ...
 byte[] result = btoa(myBase64Data).getBytes();

2-使用Base64算法的纯java实现。您可以只复制 gwt-user.jar 中包含的Base64Utils.java,并将其复制到您的客户端包中,并使用其方法:

 import my.project.namespace.client.Base64Utils;
 ...
 byte[] result = Base64Utils.fromBase64(myBase64Data);

通常我将#1 用于 IE10、FF 和 webkit 浏览器,将 #2 用于旧 IE。

于 2013-09-08T21:35:29.830 回答
2

尝试使用这个库https://code.google.com/p/gwt-crypto

这对我来说是成功的。

于 2013-09-09T06:13:03.217 回答