Vanliga källor till slösat diskutrymme är dubbla kopior av samma fil hela systemet . För att förhindra detta kan du skapa ett enkelt skript i Java för att ta bort alla utom en kopia av varje fil upptäcks . Detta skript kommer att gå igenom alla filer i en viss mapp och inspektera dem individuellt för att avgöra vilka som är likvärdiga . Detta skulle kunna vara ett sätt , till exempel för att rensa ut en musikmapp som har flera dubbletter . Instruktioner
1
Öppna en textredigerare . Valfri textredigerare kommer att göra , men du kanske föredrar att använda en integrerad utvecklingsmiljö ( IDE ) som NetBeans för att spara några steg .
2
Klistra följande grundstruktur Java klass att ta bort dubbletter av filer :
import java.io.File ;
import java.io.FileNotFoundException ;
import java.util.Scanner ;
public class DuplicateFileRemover {
public static boolean CompareFiles ( Arkiv x , File y ) {
}
public void main ( String [] args ) {
}
}
koden kommer att gå in i de två metoder : . CompareFiles och viktigaste
3
Fyll i koden för CompareFiles metoden :
public static boolean CompareFiles ( Arkiv x , File y ) {
try {
Scanner xs = new Scanner ( x ) ,
Scanner ys = new Scanner ( y ) ;
boolean result = true;
samtidigt ( resultat ) {
om ( xs.nextByte ( ) = ys.nextByte ( ) ) result = false ! ;
}
återvända resultat ,
} catch ( FileNotFoundException e ) {
System.out.println ( e.getMessage ( ) ) ;
return false ;
}
}
Denna metod kommer att jämföra de två filerna som det får , byte av byte , för att se om de innehåller dubbla uppgifter . Så snart den upptäcker en skillnad , rapporterar tillbaka att filerna är inte samma sak . Annars , rapporterar den att de är
4
Klistra in uppgifterna för den huvudsakliga metoden : .
Public void main ( String [] args ) {
File dir = new File ( " . ");
File [ ] FileList = dir.listFiles ();
for (int x = 0 , x < fileList.length , x + +) {
for (int y = x +1 , y < fileList.length , y + + ) {
om ( CompareFiles ( Filförteckning [ x ] , Filförteckning [ y ] ) ) {
Filförteckning [ x ] ta bort ( ) , .
}
}
}
}
Detta sker genom varje fil i den aktuella katalogen och tester var och en gentemot de andra för att se om de är samma . Om två filer är densamma , är den första av de två raderas .