Vanlige kilder til bortkastet diskplass er kopier av den samme filen i systemet. For å unngå dette , kan du lage et enkelt script i Java for å fjerne alle unntatt én kopi av hver fil oppdaget . Dette skriptet vil gå gjennom alle filer i en gitt mappe og undersøke dem individuelt for å bestemme hva som er tilsvarende . Dette kan være en måte , for eksempel å tømme ut en musikk- mappe som har flere doble oppføringer . Instruksjoner
en
Åpne en teksteditor . Enhver tekst editor vil gjøre, men du foretrekker å bruke en Integrated Development Environment ( IDE ) som NetBeans å spare noen trinn.
2
Paste følgende grunnleggende strukturen i Java-klassen for å fjerne dupliserte filer : en
import java.io.File ;
import java.io.FileNotFoundException ;
import java.util.scanner ;
public class DuplicateFileRemover {
public static boolean CompareFiles ( File x , File y) {
}
public static void main ( String [] args ) {
}
}
koden vil gå inn i de to metoder: . CompareFiles og viktigste
3
Fyll ut koden for CompareFiles metode :
public static boolean CompareFiles ( File x , File y ) {
try {
Scanner xs = new Scanner ( x ) ;
Scanner ys = new Scanner ( y) ;
boolean resultat = true;
while ( resultat) {
if ( xs.nextByte ( ) = ys.nextByte ( ) ) resultat = false ;!
}
retur resultat ;
} catch ( FileNotFoundException e ) {
System.out.println ( e.getMessage ( ) );
return false ;
}
}
Denne metoden vil sammenligne de to filene gitt til det , byte av byte , for å se om de inneholder like data . Så snart det oppdager en forskjell , rapporteres det at filene er ikke det samme. Ellers rapporteres det at de er
4
Lim inn dataene for den viktigste metoden : .
Public static 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 + + ) {
if ( CompareFiles ( FileList [ x ] , Filelist [y ] ) ) {
Filelist [ x ] slett (); .
}
}
}
}
Dette inntektene gjennom hver fil i gjeldende mappe og tester hver og en mot de andre for å se om de er de samme . Hvis to filer er de samme , er den første av de to slettet.