5

リストビュー内のディレクトリからファイルを表示する方法が不思議です。ファイルがで一覧表示することができます。リストビュー内のファイルのリストを表示

File dir = new File(dirPath); 
File[] filelist = dir.listFiles(); 

ArrayAdapter経由ListViewに追加しますが、私はArrayAdapterの使用を得ることはありません。

+0

正確にあなたの質問は何ですか? 'arrayAdapterを管理する方法'、 'listViewを作成する方法'に関する多くの質問があります。あなたのために、私はあなたがフォルダから、リストビューに異なるファイルの名前を表示するだけだと思う​​。アダプタに文字列のArrayListを渡す必要があります。公式の文書を見て、ListViewを行う方法のいくつかの例があります。 –

答えて

14

は、私はあなたが試みることができるので、そのディレクトリからのファイルの名前を表示したいと思い、この:

File dir = new File(dirPath); 
File[] filelist = dir.listFiles(); 
String[] theNamesOfFiles = new String[filelist.length]; 
for (int i = 0; i < theNamesOfFiles.length; i++) { 
    theNamesOfFiles[i] = filelist[i].getName(); 
} 

リストで使用するアダプタ:

new ArrayAdapter<String>(this, android.R.layout.simple_list_item, theNamesOfFiles); 

より複雑なものについてはカスタムアダプターを実装する必要があるファイルの名前を表示するよりも。

+0

ファイルの名前に加えて作成/変更の日付はどうですか? – Si8

+0

@ SiKni8 'File'クラスは残念なことに、最後のファイル変更の日付のみを公開し、作成日は公開しません。ファイルの名前の他に、カスタムアダプタやデータを含む 'Hashmap'を使用し、' SimpleAdapter'を使うことができることを示すために。 – Luksprog

+0

お返事ありがとうございます。私は変更日が私には十分だと思う。私が持っている1つの質問は、アイコンの右上にファイル名の上にカスタムアイコンを表示し、アイコンの右下に日付を変更したいということです。どのように私はそれを達成するだろうか? – Si8

1

それとも、filenamesのソートStringのために、このようなものを使用することができます。

File dataDirectory = Environment.getDataDirectory(); 
File fileDir = new File(dataDirectory, "data/com.yourapp.app/files"); 

String[] listItems = fileDir.list(); 
Arrays.sort(listItems); 
関連する問題