为什么我不能单独从方法声明中导入?(java)

时间:2015-02-24 12:48:12

标签: java eclipse import base64 decode

我写了一个简单的程序来解码我拥有的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**

我很乐意解释。

3 个答案:

答案 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));
    }
}