Javascript base64编码java解码

时间:2016-12-23 14:22:49

标签: javascript java base64 decode encode

我得到了这个使用javascript

进行base64编码的csv文件
SomeField1;SomeField2;SomeField3
Value1;Value2;Value3
Value1;ÀÃÁÄÑ;Value3
Value1;Value2;Value3

这是用于对其进行编码的javascript

var openFile = function(event) {
    var input = event.target;

    var reader = new FileReader();
    reader.onload = function(){
        var text = reader.result.substring(reader.result.indexOf(",") + 1);

        // From string >> encoded  string
        console.log(text);
        document.getElementById('demo').innerHTML = text

    };
    reader.readAsDataURL(input.files[0],'CP-1252');
    var input = event.target;

};

在发送之后,它会在像这样的

中解码
public static void GetLinesCSV(String[] Base64str, ArrayList list) {
    byte[] baos = DatatypeConverter.parseBase64Binary(Base64str[0]);
    String file_string = new String(baos);

    baos = Base64_2.decode(Base64str[0]);

    file_string = new String(baos);

    String file_out = "";
    String[] tokens = file_string.split("\r\n", -1);

    for (int i = 1; i < (tokens.length - 1); i++) {
        list.add(tokens[i]);
    }
}

问题是csv文件可以包含像Ä或Ñ这样的特殊字符。然后我把它作为输出。

SomeField1;SomeField2;SomeField3
Value1;Value2;Value3
Value1;ÀÃ�ÄÑ;Value3
Value1;Value2;Value3

如果我在javascript中对两者进行编码和解码,我会得到错误的输出,如果我在java中进行编码和解码,我也会得到错误的输出...我更改了设置,因此eclipse也使用了windows-1252。我忘记了某些内容,或者是否无法使用相同的字符集对不同语言进行编码和解码?

0 个答案:

没有答案