Ich hab ein Problem mit der Zugriffsberechtigung auf eine .txt Datei. Im Eclipse Workspace zeigt mir Windows 7 an, dass die Berechtigung vorhanden ist. 2 kleine Programme sind allerdings unterschiedlicher Meinung. Und ja auf beide Dateien haben dieselben Nutzer dieselben Zugriffsrechte.

ersteres Programm sagt: canRead == true, canWrite == false, canExecute == true
Code:
import java.io.File;
import java.io.IOException;
 
public class FilePermissionExample 
{
    public static void main( String[] args )
    {    
        try {
 
          File file = new File("test.txt");
 
          if(file.exists()){
              System.out.println("Is Execute allow : " + file.canExecute());
          System.out.println("Is Write allow : " + file.canWrite());
          System.out.println("Is Read allow : " + file.canRead());
          }
 
          file.setExecutable(false);
          file.setReadable(false);
          file.setWritable(false);
 
          System.out.println("Is Execute allow : " + file.canExecute());
          System.out.println("Is Write allow : " + file.canWrite());
          System.out.println("Is Read allow : " + file.canRead());
 
          if (file.createNewFile()){
            System.out.println("File is created!");
          }else{
            System.out.println("File already exists.");
          }
 
        } catch (IOException e) {
          e.printStackTrace();
        }
    }
}
Das zweite Programm sagt allerdings: canRead == false, isFile == false
Code:
package numbertest;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class tester {

    private static void ladeDatei(String datName) {

        File file = new File(datName);
        if (!file.canRead() || !file.isFile()){
            if (file.canRead()==false) System.out.println("error1");
            if (file.isFile()==false) System.out.println("error2");
            System.exit(0);
        }
            BufferedReader in = null;
        try {
            in = new BufferedReader(new FileReader(datName));
            String zeile = null;
            int n = 0;
            while ((zeile = in.readLine()) != null) {
                n=n+1;
            }
            System.out.println(n);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (in != null)
                try {
                    in.close();
                } catch (IOException e) {
                }
        }
    }

    public static void main(String[] args) {
        ladeDatei("test.txt");
    }
}
Außerdem hat das zweite Programm mit dem ursprünglichem textfile welches ich hinzugefügt hatte funktioniert. Nachdem ich den Text in Eclipse geänder habe funktionierte es nicht mehr (und dann folgte die Fehlersuche mit dem ersten Programm).

Eigentlich sollten alle Rechte da sein... Auf anderen Rechnern hatte ich bisher nie solche Probleme.
Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!