Programming/Android
[Android] 안드로이드 파일 목록 가져오기
쌍쌍바나나
2016. 4. 24. 17:06
반응형
들어가며
안드로이드 ListActivity에 Download폴더 내부에 있는 파일의 리스트를 보여주는 예제 입니다.
Manifest에 파일 읽는 권한을 추가합니다.
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
구현하기
public class FileList extends ListActivity
{
private File file;
private List myList;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
myList = new ArrayList();
String rootSD = Environment.getExternalStorageDirectory().toString();
file = new File( rootSD + "/Download" ) ;
File list[] = file.listFiles();
for( int i=0; i<list.length; i++)
{
myList.add( list[i].getName() );
}
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
protected void onListItemClick(ListView l, View v, int position, long id)
{
super.onListItemClick(l, v, position, id);
File temp_file = new File( file, myList.get( position ) );
if( !temp_file.isFile())
{
file = new File( file, myList.get( position ));
File list[] = file.listFiles();
myList.clear();
for( int i=0; i< list.length; i++)
{
myList.add( list[i].getName() );
}
Toast.makeText(getApplicationContext(), file.toString(), Toast.LENGTH_LONG).show();
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
}
@Override
public void onBackPressed() {
String parent = file.getParent().toString();
file = new File( parent ) ;
File list[] = file.listFiles();
myList.clear();
for( int i=0; i< list.length; i++)
{
myList.add( list[i].getName() );
}
Toast.makeText(getApplicationContext(), parent, Toast.LENGTH_LONG).show();
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
}
반응형