用Gwt转换Base64字符串

时间:2013-09-08 11:45:29

标签: javascript gwt jsni

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

此链接显示base64的编码解码,但不显示byte [] array

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

2 个答案:

答案 0 :(得分:7)

您有两种选择:

1-使用本机JS方法btoaatob,并将返回的字符串转换为java byte[]数组:

 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);

通常情况下,我在IE10,FF和webkit浏览器中使用#1,在旧IE中使用#2。

答案 1 :(得分:2)

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

这对我来说很成功。