上圖表明另一個用戶已經(jīng)建成,接下來,我們就使用當前新建的這個用戶來訪問文件權限這一項目中生成的4個文件,并將讀取
的數(shù)據(jù)打印出來。
編寫訪問代碼
在新建項目(other)中讀取另一個項目(文件權限)中的文件,編寫訪問代碼如例1-2:
例1-2 文件訪問
File file =
new File("/data/data/com.itheima.login2/files/private.dat");
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
System.out.println(br.readLine());
fis.close();
復制代碼
訪問另一用戶(文件權限)私有文件,運行程序,LogCat打印出如下圖1-2所示錯誤信息:
由上可以得出結(jié)論:一個用戶訪問另一個用戶的私有文件是不被允許的,這個私有文件只能被自身用戶所訪問。
訪問另一用戶(文件權限)的可讀文件,即將例1-1中的private.dat改為:readable.dat,運行程序,LogCat打印出如圖
1-3所示的信息:
訪問另一用戶的可寫文件,即將例1-1中的private.dat改為:writeable.dat,運行程序,LogCat打印如圖1-4所示的信息
:
由上可以得出結(jié)論:一個用戶讀取另一個用戶的可寫文件是不被允許的,這個可寫文件自能被自身程序所訪問;但是當一個用戶
編輯另一個用戶的可寫文件,這個操作是被允許的。
訪問另一用戶的可追加文件,即將例1-1中的private.dat改為:append.dat,運行程序,LogCat打印如圖1-5所示的信息
:
總結(jié):兩個用戶之間文件的訪問是受到限制的,能否訪問成功取決于該文件的權限。在一個用戶下新建一個文件,該文件在默認