12. september 2008 - 10:31Der er
22 kommentarer og 1 løsning
kan ikke slette fil
Hej jeg kan ikke slette en fil i java. der er 2 gui knapper der referer til den samme metode til at slette filen. nogle gange virker det overhoved ikke og nogle gange er det kun den ene knap der virker. meget underligt.
min gui består af nogle tabbedpanes. har fundet ud af at hvis jeg skifter væk fra det tabbedpane hvor min knap er og tilbage igen så skriver den: true true
ellers skriver den true false
hvorfor det? hvorfor har det noget med swing at gøre?
Du har oplevet det så tit. Der er en fil du vil have slettet, men din pc stritter imod, og vil ikke give dig lov. Du forsøger alle mulige tricks for at overliste din computer, men nej, den er sejlivet.
Nu har vi løsningen, og den hedder Dr. Delete. Det drejer sig om et meget lille program som er nemt at bruge. Åbn Dr. Delete, tast filen i i delete-boksen eller find den ved at browse derhen. Klik på delete-knappen, og væk er den. Dr. Delete har gjort sit job. Dr. Delete vil først forsøge at slette filen uden genstart, men er filen i brug, så skal der en genstart af pc'en til før filen er borte. Du skal så lukke computeren og genstarte. Hent programmet her. Læg det på dit skrivebord. Tjek zip-filen med din virusscanner. (Det skal du gøre ved alt du downloader). Åbn zip-filen og læg programmet hvor du ønsker det. Dr. Delete er den perfekte "doktor" til fjernelse af genstridige spyware-filer.
Et program som Dr. Delete skal benyttes med yderste forsigtighed. Du skal virkelig være klar over, at det er den rigtige fil du fjerner, og du skal være helt klar over om den bruges til andre programmer. Det kan få fatale følger, at fjerne en fil man nu engang ikke skulle have fjernet. Der er jo ofte en grund til, at din pc (eller virusscanner) ikke bare vil acceptere at en bestemt fil slettes. Spywarefri.dk fralægger sig ethvert ansvar for brugen af Dr. Delete.
Fint nok, men madiedk vil slette filen vha. java, han har højst sandsynlig selv generet filen vha. java, men glemmer bare lukke den, inden han forsøger at slette filen.
Tvivler stærkt på at Dr Delete er interessant, men det finder vi ud af nar madiedk kommer på banen.
Synes godt om
Slettet bruger
12. september 2008 - 18:37#12
Dr Delete er et lille program, ikke mange kender. Det er nemt at bruge og jeg har brugt det rigtig mange gange til at slette skrivebeskyttede filer eller filer, der der var i brug. Man skal bare være sikker på hvilken fil, man sletter. Hvis der er flere filer skal de slettes en for en. Nogle gange med en genstart
Hvis nu han gerne ville slette en tilfældig fil så er det da noget af en omvej, at udvikle et java program til det;) Windows kan normalt håndtere sletning af filer ganske fornuftigt.
Mon ikke madiedk er ved og udvikle et program og som gerne skulle kunne slette en fil af den ene eller af den anden årsag?:)
Og det er nok det mest sandsynlige eftersom madiedk's sidste par emner på Eksperten har været Java relateret;)
Om jeg begriber hvordan vi er nået hertil, kategorien er "JAVA" - d.v.s. spørgmål er "java-relateret". Spørgeren har altså et problem, som vedkommende ønsker løst gennem java. Derfor må Dr. Delete, Windows, C/C++, Delphi og hvad der ellers findes af programmer/programmerbare løsninger være totalt uinteressante, (der findes sikkert mere end 200 programmer som kan slette en fil), det er bare ikke interessant, for det handler om "JAVA".
Som >kalp< trods alt ender med at sige/skrive - vi skal vist finde løsningen gennem java.
Fortsat god aften venner :)
Synes godt om
Slettet bruger
12. september 2008 - 21:38#15
: _carsten---> kan godt se jeg er på galt spor. beklager og hopper af spørgsmålet nu
hehe så kom vi lidt vidt omkring, men helt korrekt det er gennem java filen skal slettes så dr. delete er ikke så relevant her. så vidt jeg kan se bruges filen ikke af andre processer. og som skrevet så kan jeg godt slette den hvis jeg klikker væk fra min tabbedpane og tilbage igen så kan den godt slette. ret underligt.
det er der sker at jeg i klassekonstruktøren har: f = new File(bogføringsSti + bogføringsfilNavn); f.delete(); f.createNewFile(); jeg sletter og opretter den igen, da filen skal være tom hver gang programmet starter.
når jeg klikker på slet knappen er den her kode: f.delete();
og i den metode som der skriver til filen starter jeg med f.createNewFile(); og slutter med at close både den printwriter der skriver til filen og den bufferedreader der læser fra filen.
jeg tror måske der virker efter jeg har tilføjet en: if (!f.exists()){ f.createNewFile(); } istedet for bare at skrive f.createNewFile(); kan det passe og hvorfor?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.