私のアプリケーションでは、ユーザーがオーディオをアップロードしたい場合、そのユーザーは .mp3 拡張子ファイルのみを選択できる必要があります。ユーザーが .ppt、.pdf などの他のファイルを選択した場合、それは許可されません。
SD カードから File explore: Choose file dialogの承認済みコードを入手しました。
しかし、.mp3 拡張子ファイルまたは .mp3 拡張子ファイルのリストのみが必要です。
それで、私は何をすべきですか?
私のアプリケーションでは、ユーザーがオーディオをアップロードしたい場合、そのユーザーは .mp3 拡張子ファイルのみを選択できる必要があります。ユーザーが .ppt、.pdf などの他のファイルを選択した場合、それは許可されません。
SD カードから File explore: Choose file dialogの承認済みコードを入手しました。
しかし、.mp3 拡張子ファイルまたは .mp3 拡張子ファイルのリストのみが必要です。
それで、私は何をすべきですか?
ファイルパターンを確認してから比較し、それが mp3 の場合は arraylist に追加し、以下の関数を確認すると、 のリストが返されますmp3
。
Vector<String> mStrings =new Vector<String>();
int mTotalimage=0;
public void fileExtension(File dir) {
String mp3Pattern = ".mp3";
File listFile[] = dir.listFiles();
if (listFile != null) {
for (int i = 0; i < listFile.length; i++) {
String mCheck=listFile[i].getAbsoluteFile().toString();
mCheck=mCheck.substring(mCheck.lastIndexOf("/")+1);
System.out.println("listFile[i].getAbsoluteFile().toString()"+listFile[i].getAbsoluteFile().toString());
System.out.println("mCheck..."+mCheck);
if (listFile[i].isDirectory() && !(mCheck.startsWith(".")) ) {
fileExtension(listFile[i]);
} else {
//fetch jpg from folders.
if (listFile[i].getName().endsWith(mp3Pattern)){
mStrings.add(listFile[i].getAbsolutePath().toString());
mTotalimage++;
//fetch png image from folders.
}
}
}
}
System.out.println("size on return......."+mStrings.size());
}
多分あなたはこのようなファイルをチェックすることができます
File f = new File("/sdcard/");
for (File file : f.listFiles())
{
if(file.getName().endsWith(".mp3"))
{
// do something with them, add them to list or whatever
}
}