最近追加したsdcardのmp3ファイルを削除しなければならないアプリを作っています。曲が保存される形式は次のとおりです。
Songhello_17_26.amr
ここで、17_26は曲が追加された時刻です。誰かがSDカードに最近追加されたファイルを削除する方法を教えてもらえますか?時間を削除したいということは、最後に追加したファイルを削除する必要があるということです。どんな助けでもありがたいです。
最近追加したsdcardのmp3ファイルを削除しなければならないアプリを作っています。曲が保存される形式は次のとおりです。
Songhello_17_26.amr
ここで、17_26は曲が追加された時刻です。誰かがSDカードに最近追加されたファイルを削除する方法を教えてもらえますか?時間を削除したいということは、最後に追加したファイルを削除する必要があるということです。どんな助けでもありがたいです。
ここに記載されているように、直接それを行うことはできません。最初にファイルのリストを取得し、、、、および削除する必要がFile.listFiles()
ありComparator
ます。File.lastModified()
Arrays.sort()
編集:
File f = new File(path);
File [] files = f.listFiles();
Arrays.sort( files, new Comparator()
{
public int compare(Object o1, Object o2) {
if (((File)o1).lastModified() > ((File)o2).lastModified()) {
return -1;
} else if (((File)o1).lastModified() < ((File)o2).lastModified()) {
return +1;
} else {
return 0;
}
}
});
最新のものを削除するには:
files[0].delete();
**この方法を試してください:
public static boolean deleteDirectory(File path) {
// TODO Auto-generated method stub
if( path.exists() ) {
File[] files = path.listFiles();
for(int i=0; i<files.length; i++) {
enter code here if(files[i].isDirectory()) {
deleteDirectory(files[i]);
}
else {
files[i].delete();
}
}
}
return(path.delete());
}
または、次のコードを使用して、SDカードからファイルを削除できます。
File folder = Environment.getExternalStorageDirectory();
String fileName = folder.getPath() + "/pass/hello.pdf";
と
String fileName = Environment.getExternalStorageDirectory() + "/pass/hello.pdf";**
これを試して
public String[] getDirectoryList(String path) {
String[] dirListing = null;
File dir = new File(path);
dirListing = dir.list();
Arrays.sort(dirListing, 0, dirListing.length);
return dirListing;
}
String[] lstFile = getDirectoryList()
if(lstFile.length > 0){
File file = new File(lstFile[0]);
boolean fStatus = file.delete();
}
これも試してみてください:
String root_sd = Environment.getExternalStorageDirectory().toString();
File file = new File(path) ;
File list[] = file.listFiles();
for(File f:list)
{
name = file.getName();
filestv.setText(f.getName());
//add new files name in the list
// delete.setText(name );
そのコードは、SDカードに保存されている最新のファイルを見ることができます。このチュートリアルに従うことをお勧めします。