Social Icons

.

суббота, 22 мая 2010 г.

Сканирование директорий из JAVA

Задача: необходимо просканировать директорию на предмет наличия в ней определенных файлов и что-то сделать с ними. Например, переименовать.

Решение:

public boolean scan(){
boolean bResult = false;
try{
 if( !wwu.is(this.szDirectory) ) throw new Exception("Out of data directiory");
 //Создаем фильтр
 FilenameFilter theFilter = new FilenameFilter() {
  public boolean accept(File theDir, String szName) {
   return szName.endsWith(".csv");
  }
 };
 //Получаем список файлов, соответсвующих фильтру
 String[] theFileList = (new File( this.szDirectory )).list( theFilter );
 if(theFileList == null) throw new Exception("Data directiory is absent");
 //Перебираем найденные файлы
 bResult = true;
 log.info("Start scann directiory " + this.szDirectory );
 for(String szFilename:theFileList){
  log.info( "File name is" + szFilename  );
  //Переименовываем их, добавляя каждому .save в конце
  File file = new File(szDirectory + szFilename);
  File file2 = new File(szDirectory + szFilename + ".save" );
  if( file2.exists() ) file2.delete();
  if ( !file.renameTo(file2) ) log.info("... CAN'T renamed to " + szFilename + ".save");
 }
}
catch(Exception Ex){
 bResult = false;
 log.severe("Exception scan(): " + Ex.getMessage() );
}
return bResult;
}

Комментариев нет:

Отправить комментарий

 

Так говорил Учитель:

У хорошо написанной программы есть свой собственный рай, у плохо написанной — свой собственный ад.

Russian Developer

Взгляд его светел, усилия праведны, старания бесплодны, дело безнадежно ...