이 기사의 예에서는 Android 프로그래밍을 통해 파일 탐색 기능을 구현하는 방법을 설명합니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.
현재 파일업로드 작업 중인데, 제가 여는 fileDialog 기능을 어떻게 구현할까 고민 중이었습니다. 파일을 찾아보고 파일을 선택합니다. 많은 정보를 확인하고 많은 포럼을 방문했는데 모두 이 기능을 사용할 수 없다고 했습니다. 정말 이상합니다. 물론 이 기능을 직접 추가해야 합니다.
먼저 이 파일 탐색의 간단한 구현 원리에 대해 이야기해 보겠습니다.
먼저 루트 디렉터리로 디렉터리를 선택한 다음 이 디렉터리를 여는 것이 가장 일반적으로 사용됩니다. 다음과 같이 File 클래스를 사용하십시오:
File file=new File(path);
그러면 다음과 같이
이 디렉토리에 있는 모든 파일 및 폴더 목록을 얻을 수 있습니다:
File[] files = file.listFiles();
그리고 얻은 파일을 기준으로 폴더인지 파일인지 확인하고 파일이면 목록에 추가합니다. 아이콘을 표시하려면 파일의 접미사에 따라 다른 아이콘을 설정해야 합니다. ListView에 표시하겠습니다.
기본 코드는 다음과 같습니다.
for (File currentFile : files) { //判断是一个文件夹还是一个文件 if (currentFile.isDirectory()) { currentIcon = getResources().getDrawable(R.drawable.folder); } else { //取得文件名 String fileName = currentFile.getName(); //根据文件名来判断文件类型,设置不同的图标 if (checkEndsWithInStringArray(fileName, getResources().getStringArray(R.array.fileEndingImage))) { currentIcon = getResources().getDrawable(R.drawable.image); } else if (checkEndsWithInStringArray(fileName, getResources().getStringArray(R.array.fileEndingWebText))) { currentIcon = getResources().getDrawable(R.drawable.webtext); } else if (checkEndsWithInStringArray(fileName, getResources().getStringArray(R.array.fileEndingPackage))) { currentIcon = getResources().getDrawable(R.drawable.packed); } else if (checkEndsWithInStringArray(fileName, getResources().getStringArray(R.array.fileEndingAudio))) { currentIcon = getResources().getDrawable(R.drawable.audio); } else if (checkEndsWithInStringArray(fileName, getResources().getStringArray(R.array.fileEndingVideo))) { currentIcon = getResources().getDrawable(R.drawable.video); } else { currentIcon = getResources().getDrawable(R.drawable.text); } } }
접미사에 따른 파일 형식 판단은 다음과 같습니다.
//通过文件名判断是什么类型的文件 private boolean checkEndsWithInStringArray(String checkItsEnd, String[] fileEndings) { for(String aEnd : fileEndings) { if(checkItsEnd.endsWith(aEnd)) return true; } return false; }
이제 아이콘으로 목록을 표시할 수 있습니다. 이제 하위 디렉터리를 여는 방법을 소개할 차례입니다. 먼저 클릭한 내용을 기준으로 Listview에 클릭 이벤트를 추가합니다. 파일인지 파일인지 확인하고, 폴더인 경우 디스플레이를 다시 호출하고, 이전에 표시된 내용을 지우고 표시하면 필요에 따라 이 작업을 수행할 수 있습니다. : 열기, 선택 등
위에 쓴 내용은 파일 브라우저를 직접 만드는 방법에 대한 것이며, 여기서는 다양한 사용 장소에 따라 특정 파일을 표시할 수도 있습니다. 이를 위해서는 독자들이 점차적으로 익숙해지고 스스로 사용하면서 탐색해 볼 필요가 있습니다!
이 Listview도 여러분의 필요에 따라 구성되었습니다. 이 글을 공부하시면 File과 ListView의 사용법을 확실히 이해하실 수 있을 것이라 믿습니다. 여러분만의 실용적인 파일 브라우저를 만들어 보세요!
이 글이 안드로이드 프로그래밍에 종사하는 모든 분들께 도움이 되기를 바랍니다.
파일 탐색 기능[FileDialog와 유사한 기능]을 구현하는 더 많은 Android 프로그래밍 방법을 보려면 PHP 중국어 웹사이트에서 관련 기사를 주목하세요!