2012-03-05 25 views
11

Tôi tạo một số thư mục thành nội dung. Mỗi thư mục chứa các tệp mà tôi muốn liệt kê. Tôi đang sử dụng mã sau đây nhưng tôi luôn luôn nhận được một giá trị null cho fileList. Cảm ơn bạn.tệp danh sách android chứa trong thư mục con nội dung

tôi đã sử dụng, listFiles("/assets/images/","nothing");

private void listFiles(String dirFrom, String dirTo) { 


     File f = new File(dirFrom); 

     String fileList[] = f.list(); 

      if (fileList != null) 
      { 
       for (int i = 0;i<fileList.length;i++) 
       { 
        Log.d("",fileList[i]); 
       } 
      } 
    }  

Trả lời

26

Bạn có lẽ sẽ muốn làm điều này:

private void listFiles(String dirFrom) { 
     Resources res = getResources(); //if you are in an activity 
     AssetManager am = res.getAssets(); 
     String fileList[] = am.list(dirFrom); 

      if (fileList != null) 
      { 
       for (int i = 0;i<fileList.length;i++) 
       { 
        Log.d("",fileList[i]); 
       } 
      } 
    } 

Cũng gọi hàm của bạn nên là: listFiles("images"); nếu bạn muốn liệt kê hình ảnh.

+0

làm thế nào để có được tên tập tin? –

+0

@The_Lazy_Man Không phải là mảng các chuỗi được trả về bởi phương thức 'Assetmanager.list()' mà bạn muốn? – Luksprog

+0

vâng, bạn nói đúng. Nhưng tôi đang đối mặt với vấn đề mới. không thể lấy ID tài nguyên để khởi tạo ImageView. Bởi vì tập tin tài sản không cung cấp cho tôi điều đó. Cảm ơn bạn đã trả lời. :) –

6

đơn giản nhất chắc chắn sẽ là:

String[] fileList = getAssets().list("images"); 
Các vấn đề liên quan