For å gi nytt navn til en fil, skal brukeren eller programmereren ha utførelsestillatelse fra katalogen som direkte har filen. Hvis det nye navnet allerede eksisterer, som et navn på en annen fil i samme katalog, bør ikke omdøpet finne sted.
Filerklassen har flere fordeler i forhold til filklassen. For eksempel, hvis en annen fil med samme navn allerede eksisterer, har filklassen valget om å erstatte den andre filen. Den har et unntak (feil) håndteringsskjema, mens filen ikke har et effektivt unntakshåndteringsskjema.
Denne artikkelen forklarer hvordan du skal gi nytt navn til en fil gjennom Java, ved å bruke filen og filklassene.
Klassefil
Denne klassen har metoden som heter Renameto (), for å gi nytt navn til en fil. For å bruke denne metoden, må et objekt av typen, fil, bli instantiert fra klassen, filen. Det er dette objektet som vil bruke metoden. Et filobjekt er et objekt som har en filsti. Et eksempel på en filsti er:
/hjemme/bruker/dir1/demo.tekstder navnene er kataloger, bortsett fra “Demo.txt ”som er et filnavn. Syntaksen til en konstruktør for å lage (instantisere) et filobjekt er:
offentlig fil (String Pathname)Hvor Pathname er en slik bane gitt ovenfor, men må være i sitater.
Syntaksen for renameto -metoden til filobjektet er:
offentlig boolsk renameto (fildest)Hvor DEST (for destinasjon) er et nytt filobjekt av samme vei, men slutter med det nye filnavnet. Merk: Filnavnet på slutten av en sti er en del av banen (offisielt). Dette betyr at DEST er et annet filobjekt som skal referere til den samme filen. Så hvis navnet Demo.TXT skal endres til faktisk.txt, desten ville være:
/hjemme/bruker/dir1/faktisk.tekstMetoden returnerer sann hvis omdøping fant sted og falsk ellers. Hvis falsk returneres, vil det ikke lett være mulig å vite hvorfor filen ikke kunne bli omdøpt.
Følgende Java -program gir nytt navn til filen, demo.txt til faktisk.txt, i samsvar med ovennevnte ordning:
Importer Java.io.*;Utgangen skal være:
Filen omdøpt vellykket.
alt er likt.
Klassefiler
Klassen, filer i Java.nio.fil.* Pakken har bare statiske metoder. "Statisk" betyr at klassen ikke trenger å bli instantiert for noen av metodene som skal brukes. Klassen har den statiske metoden som heter Move (), for å flytte en fil fra et sted til et annet, med mulighet for å gi destinasjonsfilen et nytt navn. For å bruke denne metoden, må et objekt av typen, sti, oppnås (returnert) fra klassen, stier. Det er dette objektet som vil bruke metoden. Et baneobjekt ligner på et filobjekt: det er et objekt som har en filsti. Et eksempel på en filsti er:
/hjemme/bruker/dir1/demo.tekstder navnene er kataloger, bortsett fra “Demo.txt ”som er et filnavn. Stieklassen har bare statiske metoder. En av dem er:
offentlig statisk sti få (streng først, streng ... mer)Igjen betyr "statisk" at et baneobjekt ikke trenger å opprettes (instantiert), for get () -metoden som skal brukes. De mange argumentene for get () -metoden betyr at de mange strengene ville bli med for en vei som skal oppnås. En streng bokstavelig er i dobbeltkjørt.
Stieklassen er også i Java.nio.fil.* pakke, som må importeres.
Syntaks for MOVE () -metoden i filklassen er:
Offentlig statisk baneflytting (banekilde, banemål, copyoption ... alternativer) kaster IOExceptionDet kaster en ioxception. Så denne uttalelsen skal være i en prøveblokk, etterfulgt av en fangstblokk. Kilden refererer til den opprinnelige banen, men må være et baneobjekt. Mål refererer til den nye banen og må også være et baneobjekt. CopyOption -argumentet kan utelates som i følgende program.
For å gi nytt navn til en fil med MOVE () -metoden, vil filen bli flyttet til seg selv og gi den et nytt navn. Så banen for kilden skal ende med det opprinnelige filnavnet, og banen for målet skal ende med det nye filnavnet. Så hvis navnet Demo.TXT skal endres til faktisk.txt, da ville banen for målet være:
/hjemme/bruker/dir1/faktisk.tekstFlyttemetoden kaster et unntak, som er et objekt for IOException Class. Så pakken Java.io.*, som har IOException -klassen, må importeres.
Følgende Java -programmet, gir nytt navn til filen, demo.txt til faktisk.txt, i samsvar med denne ordningen:
Importer Java.io.*;Hvis det ikke er noen utdata for dette programmet, har filen fått nytt navn.
Konklusjon
Å gi nytt navn til en fil gjøres vanligvis gjennom operativsystemets skallprogram eller det tilsvarende vindusgrensesnittet. Imidlertid har Java de forhåndsdefinerte klasser, filer og filer, med Shell -kommandoer, som er metodene for klassene. Klassen, filen er i Java.io.* Pakke, som må importeres for at metodene skal brukes. Klassen, Files er i Java.nio.fil.* Pakke, som også må importeres, for at egne metoder skal brukes.
For å bruke filklassen, må et objekt av filtype bli instantiert. Dette objektet vil bruke sin Renameto () -metode for å gi nytt navn til filen. For å bruke denne metoden er det nødvendig med to filobjekter, effektivt baneobjekter. Stiobjektene skiller seg bare ved deres ende-of-path, med de gamle og nye filnavnene. Filobjektet er av filklassen, som er i Java.io.* pakke.
På den annen side bruker Files -klassen sin statiske Move () -metode for å gi nytt navn til en fil indirekte. Denne MOVE () -metoden flytter en fil til seg selv, men med et nytt navn. For å bruke denne metoden er det nødvendig med to banerobjekter. Stiobjektet skiller seg bare ut i deres ender, med de gamle og nye filnavnene. Path -objektet er av stierklassen, som er i Java.nio.fil.* pakke. Stieklassen har bare statiske metoder, hvor den som skal oppnå et baneobjekt er å få ().