我写了一个简单的程序来解码我拥有的base64编码的字符串。我使用eclipse搜索了一个方法,并发现方法javax.xml.bind.DatatypeConverter.parseBase64Binary(String s)
就是这样做的。我发现当我使用该方法的完整位置时,程序运行正常:
public static void main(String args[]) {
String s = "cGFzc3dvcmQ6IGlsb3ZlbXlzZWxmISEx";
byte[] converted = javax.xml.bind.DatatypeConverter.parseBase64Binary(s);
System.out.println(new String(converted));
}
但出于某种原因,当我试图导入该位置时,eclipse会给我一个错误:
导入:
import javax.xml.bind.DatatypeConverter.*;
第一个代码中的新第3行:
byte[] converted = javax.xml.bind.DatatypeConverter.parseBase64Binary(s);
错误我接受新的第3行:
The method parseBase64Binary(String) is undefined for the type **name of class**
我很乐意解释。
答案 0 :(得分:1)
您需要执行static
导入:
import static javax.xml.bind.DatatypeConverter.*;
或
import static javax.xml.bind.DatatypeConverter.parseBase64Binary;
然后你就能做到:
byte[] converted = parseBase64Binary(s);
更多信息:
答案 1 :(得分:1)
import static javax.xml.bind.DatatypeConverter.*;
然后 -
byte[] converted = parseBase64Binary(s);
答案 2 :(得分:0)
删除.*
中的javax.xml.bind.DatatypeConverter.*;
:
import javax.xml.bind.DatatypeConverter;
public class Test {
public static void main(String[] args)
{
String s = "cGFzc3dvcmQ6IGlsb3ZlbXlzZWxmISEx";
byte[] converted = DatatypeConverter.parseBase64Binary(s);
System.out.println(new String(converted));
}
}