下面方法是来取的目录下指定文件的绝对路径
filename 文件名
dir 目录当目录下面没有目录的情况下,结果是对的
但有目录的前提下总是返回null怎么修改????public String getpath(File dir,String filename) {
String returnvalue = null;
if ( dir == null||filename==null) {
throw new IllegalArgumentException("Argument " + dir +
" is not a directory. ");
}
File[] entries = dir.listFiles();
int sz = entries.length;
for (int i = 0; i < sz; i++) {
if (entries[i].isDirectory()) {
getpath(entries[i],filename);
}
else {
if (entries[i].getAbsolutePath().endsWith(filename)){
return entries[i].getAbsolutePath();
}
}
}
return null;
}
filename 文件名
dir 目录当目录下面没有目录的情况下,结果是对的
但有目录的前提下总是返回null怎么修改????public String getpath(File dir,String filename) {
String returnvalue = null;
if ( dir == null||filename==null) {
throw new IllegalArgumentException("Argument " + dir +
" is not a directory. ");
}
File[] entries = dir.listFiles();
int sz = entries.length;
for (int i = 0; i < sz; i++) {
if (entries[i].isDirectory()) {
getpath(entries[i],filename);
}
else {
if (entries[i].getAbsolutePath().endsWith(filename)){
return entries[i].getAbsolutePath();
}
}
}
return null;
}
public String getpath(File dir,String filename) {
String returnvalue = null;
if ( dir == null||filename==null) {
throw new IllegalArgumentException("Argument " + dir +
" is not a directory. ");
}
File[] entries = dir.listFiles();
int sz = entries.length;
for (int i = 0; i < sz; i++) {
if (entries[i].isDirectory()) {
returnvalue = getpath(entries[i],filename);
if (returnvalue!=null)
return returnvalue;
}
else {
if (entries[i].getAbsolutePath().endsWith(filename)){
return entries[i].getAbsolutePath();
}
}
}
return null;
}
F:\music\MTV\beyond-海阔天空.wmv
File file = new File(path);
if (file.getAbsoluteFile().exists()){
File[] files = file.listFiles();
for (int i=0; i<files.length; i++){
if (files[i].isDirectory()){
deleteTempFile(path+File.separatorChar+files[i].getName());
}
files[i].delete();
}
}
}
{
public static String getpath(File dir,String filename)
{
String returnvalue = null;
if ( dir == null||filename==null)
{
throw new IllegalArgumentException("Argument " + dir +
" is not a directory. ");
}
File[] entries = dir.listFiles();
int sz = entries.length;
for (int i = 0; i < sz; i++)
{
if (entries[i].isDirectory()&&entries[i].listFiles().length!=0) //如果该目录为空则这个循环不会执行,直接跳到“return null”语句
{
getpath(entries[i],filename);
}
else
{
if (entries[i].getAbsolutePath().endsWith(filename)){
return entries[i].getAbsolutePath();
}
}
}
return null;
}
public static void main(String [] args)
{
File f=new File(".");
System.out.println(getpath(f,"1"));//1是当前目录下的一个文件夹
}
}
我试过了,可以这样改