FileSystemStorage isDirectory为目录返回false

时间:2014-07-16 14:25:23

标签: codenameone

我正在尝试在CN1中编写文件浏览器,让用户选择要上传的个人资料图片。 我尝试使用FileSystemStorage的isDirectory()方法,但它为目录返回false。

代码:

 private void displayFiles(final Container c, String root)
{
    c.removeAll();
    FileSystemStorage fs = FileSystemStorage.getInstance();
    try {
        String files[] = fs.listFiles(root);
        for(final String file: files)
        {

            System.out.println(file+"-->"+fs.isDirectory(file));
            if(fs.isDirectory(file))
            {
                Button b = new Button("Folder::"+file);
                b.addActionListener(new ActionListener() {

                    public void actionPerformed(ActionEvent evt) {
                        displayFiles(c, file);
                    }
                });
                c.addComponent(b);
            }else
            {
                Container c1 = new Container(new BoxLayout(BoxLayout.X_AXIS));
                Label l = new Label("File::"+file);
                CheckBox cb = new CheckBox();
                c1.addComponent(l);
                c1.addComponent(cb);
                c.addComponent(c1);
            }
        }
    } catch (IOException ex) {

    }
    c.revalidate();
}

输出: CN1Log __ $ - >假

CN1Preferences - >假

饼干 - >假

数据 - >假

FaceBookAccesstmp652635968 - >假

的folder1 - >假

文件夹2 - >假

HELLOCN1FS - >假

MyFileName的 - >假

令牌 - >假

模拟器的屏幕截图:

enter image description here

资源管理器的屏幕截图

enter image description here

手机上的行为也一样

这可能是个错误吗?

我有什么不正确的事吗?

由于

1 个答案:

答案 0 :(得分:0)

您需要使用文件的完整路径:

if(fs.isDirectory(root + file))