java IO .createNewFile

Tags:    java

<< < 12 > >>
Jeg er igang med at se om jeg kan oprette en fil i mappen Dokumenter. Jeg bruger denne kode:

Fold kodeboks ind/udJava kode 


den udskriver:

Fjel
true

vær gang, også selvom filen hej.txt findes i mappen dokumenter.

Har jeg skrevet stien på en forkert måde? Eller hvad er der galt?



13 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Hej Andreas,

Prøv at udskifte:
Fold kodeboks ind/udJava kode 


Skriv så derefter hvad den skriver her i tråden. Det kan give dig et hint.

Derudover har jeg et stort eksempel:
Fold kodeboks ind/udJava kode 


Med venlig hilsen
Ieet





Indlæg senest redigeret d. 07.08.2008 11:50 af Bruger #12836
Til dit spørgsmål om MS, så var det før i tiden sådan, at hvis du lod folk installere et program i eksempelvis standard programmermappen, skulle du tage højde at de kunne være i andre sprog. Det gjorde man ved at tilgå registreringsdatabasen, hvilket jeg personligt hader. (Dernæst er der den med charset)
Men nu kan du være sikker på at mappen altid hedder Program Files og Users, ergo er det blevet lettere at tilgå mappen i alle sprog.

Til det med rettigheder giver det mening hvis du prøver at tilgå en lokal fil på din egen computer. Det må jo slet ikke kunne lade sig gøre, derfor skal du give filen gæsterettigheder (hvis det da er tilstrækkeligt). Du kan højreklikke på den og derfra sætte rettighederne til filen.

Håber det hjælper!



Nu er jeg ikke Java programmør, men skal c:/Brugere/Andreas/Dokumenter/hej.txt ikke være med C:\Brugere\....
Det ser ud til at du bruger Vista. Hvis du kigger efter i stien til Brugere, vil du opdage at de i modsætning til XP, bruger det engelske navn til systemmapper, selvom du ser det på dansk.
Derfor vil stien være C:\Users\.... osv. C:\Brugere eksisterer meget enkelt ikke :)



Nu er jeg ikke Java programmør, men skal c:/Brugere/Andreas/Dokumenter/hej.txt ikke være med C:\Brugere\....
Det ser ud til at du bruger Vista. Hvis du kigger efter i stien til Brugere, vil du opdage at de i modsætning til XP, bruger det engelske navn til systemmapper, selvom du ser det på dansk.
Derfor vil stien være C:\Users\.... osv. C:\Brugere eksisterer meget enkelt ikke :)


tænkte at det kunne være noget i den retning. Har du nogen idée om hvorfor microsoft har valgt at lave det på den måde, syntes selv det ret irreterene.

Jeg vil prøve Ieet's forslag.



har prøvet Ieet's kode, det giver et mere interasent resultat:

c:\hej.txtEXCEPTION: java.io.IOException: Klienten mangler en nødvendig rettighed
true

det ser ud som om at den ikke har retiheder til at lave en fil på c drevet.

grunden til jeg lavede / og ikke \\ er på grund af artiklen "filer i java" der opfordre til at man bruger /.

edit:
klassen er i pakken "main" vis det kan hjælpe.




Indlæg senest redigeret d. 07.08.2008 14:19 af Bruger #13669


Hej Andreas,

Prøv venligst med \\ ...

Eller må du til at checke brugerrettigheder i vista.

Med venlig hilsen
Ieet



slog det der bruger kontrol halløjsa fra, og nu virker det...

men det der bruger kontrol noget borde da bare poppe op med en meddelse, istedet for helt at nægte programmet adgang?



slog det der bruger kontrol halløjsa fra, og nu virker det...

men det der bruger kontrol noget borde da bare poppe op med en meddelse, istedet for helt at nægte programmet adgang?

Nej, det er ikke nødvendigvis dig som bruger, der forsøger at tilgå filen i dette tilfælde.



slog det der bruger kontrol halløjsa fra, og nu virker det...

men det der bruger kontrol noget borde da bare poppe op med en meddelse, istedet for helt at nægte programmet adgang?

Nej, det er ikke nødvendigvis dig som bruger, der forsøger at tilgå filen i dette tilfælde.


det vil altså sige at java programmer der generere filer ikke vil virke på langt de fleste vista computere?



Nej, UAC forbyder mange handlinger. Hvis man bruger deres egne programmeringssprog, kan man kode mod UAC, men den slags forsøg på dominans skal du selvfølgelig ikke falde for! Så hellere opfordre folk til at slå det fra.



<< < 12 > >>
t