1. 程式人生 > >Android中往手機自帶的儲存空間寫入檔案

Android中往手機自帶的儲存空間寫入檔案

FileOutputStream outStream = this.getContext().openFileOutput("test.txt", Context.MODE_PRIVATE);

outStream.write("寫入測試資料".getBytes());

outStream.close();

openFileOutput()方法的第一引數用於指定檔名稱,不能包含路徑分隔符“/”,如果檔案不存在,Android應用會自動建立它。

建立的檔案儲存在/data/data/<package name>/files目錄,如:/data/data/com.zhjh.file/files/test.txt,

通過點選Eclipse選單“Window”-“Show View”-“Other”,在對話視窗中展開android資料夾,選擇下面的File Explorer檢視,

然後在File Explorer檢視中展開/data/data/<package name>/files目錄就可以看到儲存的檔案test.txt。

openFileOutput()方法的第二引數用於指定操作模式,有四種模式,分別為: 

Context.MODE_PRIVATE = 0

Context.MODE_APPEND = 32768

Context.MODE_WORLD_READABLE = 1

Context.MODE_WORLD_WRITEABLE = 2

Context.MODE_PRIVATE:為預設操作模式,代表該檔案是私有資料,只能被應用本身訪問,在該模式下,寫入的內容會覆蓋原檔案的內容,

如果想把新寫入的內容追加到原檔案中,可以使用Context.MODE_APPEND。

Context.MODE_APPEND:建立的檔案是私有資料,該模式會檢查檔案是否存在,存在就往檔案追加內容,否則就建立新檔案。

Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用來控制其他應用是否有許可權讀寫該檔案。

MODE_WORLD_READABLE:表示當前檔案可以被其他應用讀取;MODE_WORLD_WRITEABLE:表示當前檔案可以被其他應用寫入。

如果希望該檔案被其他應用讀和寫,可以這樣寫: openFileOutput("test.txt", Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE);

android有一套自己的安全模型,當應用程式(.apk)在安裝時系統就會分配給他一個userid,如果該應用要去訪問其他資源比如檔案的時候,就需要userid匹配。

預設情況下,任何應用建立的檔案、sharedpreferences、資料庫都應該是私有的(位於/data/data/<package name>/files),其他程式無法訪問。

除非在建立時指定了Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE ,只有這樣設定其他程式才能正確訪問。

相關推薦

Android手機儲存空間寫入檔案

FileOutputStream outStream = this.getContext().openFileOutput("test.txt", Context.MODE_PRIVATE); outStream.write("寫入測試資料".getBytes());

18、android呼叫系統檔案管理器並返回選中檔案的路徑

思路: 通過Android API呼叫系統自帶的檔案瀏覽器選取檔案獲得URI,然後將URI轉換成file,從而得到file。 import android.annotation.SuppressLint;import android.app.Activity;impo

用NDK呼叫Android手機的openssl庫函式

目標: 目前很多Android手機已經自帶了openssl庫, 即libssl.so, libcrypto.so, 以下示例實現了APK通過NDK呼叫openssl庫函式PKCS5_PBKDF2_HMAC(金鑰生成演算法) 1) 在android工程中建立 jni目錄 2)

Android 使用intent開啟手機應用播放視訊,音訊,文件,還有開啟應用市場

1 開啟手機上的視訊播放器播放視訊 String url = "http://192.168.0.1/1.mp4" Intent intent = new Intent(); intent.setAc

android開發,APP下載成功的圖片或者視訊同時顯示在手機的相簿裡

這篇文章不是完全的原創,因為有借鑑了網上的一些資料,一個輔助類AlbumNotifyHelper.java 謝謝寫這個輔助類的大神,因為我找不到作者文章的原地址了,所以我在這裡就貼出程式碼,不直接連結原作者的文章。 1。輔助類 import android.conten

android開發呼叫系統檔案選擇器遇到的一些問題

1.呼叫系統的檔案瀏覽器然後進入檔案管理器選擇文字檔案後,直接回到檔案瀏覽器頁面造成文字檔案無法選擇 開始時候使用的方法: Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"

前端制作之微信小技巧__避免a標簽跳轉到手機瀏覽器

廣泛 沒有 最大 進行 發送 cli bsp 兼容 效果 隨著微信的越來越大眾化,微信的使用程度也越來越高。隨之,產生了一種新的推廣模式,即微信推廣。在這個微信的大平臺上會衍生出許許多多的推廣手段。而移動前端作為服務於手機用戶的手機網頁技術,也不可避免的加入進來。 一些

CentOS5.5卸載jdk 安裝自己的jdk

5.5 eve 當前 nvi 如果 -1 code jdk1.7 profile 因為需要使用JDK1.6的版本,但是RedHat6.4自帶的JDK是1.7版本,因此需要卸載JDK1.7,安裝JDK1.6的版本,我使用的JDK1.6版本為:jdk-6u45-Linux-x6

Android快速實現定義字體!

sdk true fcm version ttf spa pre ets 怎麽 前言:我們都知道,Android中默認的字體是黑體,而大多數app也都是使用的這種字體,但我們發現,大多數app中,個別地方字體非常好看,例如app的標題欄,菜單欄等地方,那他們是怎麽做到的呢?

如何禁用手機的輸入法軟鍵盤

輸入 element 需求 但是 手機 active sharp 寫代碼 方法 今天在寫代碼的時候,突然遇到了這麽一個需求,不許用手機自帶的鍵盤,要用設計好的鍵盤統一起來,我一向,這丫的腦子有問題吧。但是也不是沒有道理的。可以統一起來,給用戶一種統一協調性,然後查找了許多代

tp5使用框架redis小例

$redis = new \Redis(); $redis->connect('47.94.23.177', 8081); $redis->auth('colorfuljfq');//redis連線密碼 $redis->incr('today_income_'.$master_id

Netty有哪些的ChannelHandler?

https://blog.csdn.net/weixin_39687783/article/details/80792930 Netty中有哪些自帶的ChannelHandler? SslHandler:負責對請求進行加密和解密,是放在ChannelPipeline中的第一個Chann

Android判斷手機是否已經Root

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

在Qt quick 新增qt的虛擬鍵盤

作業系統:ubuntu17.10 Qt版本:Qt5.10 Qt5.7以後的開源版本中支援自帶的虛擬鍵盤了,下面記錄一下在自己的Qt Quick中加入該模組: 1. 在main()函式中新增 qputenv("QT_IM_MODULE", QByteArray("qtvirtualkey

微信打開鏈接後如何自動調用手機默認瀏覽器下載APP

但是 產品 caption bsp shu 默認 用戶操作 發的 跳轉 微信被認為是目前最具營銷價值的營銷渠道之一,原因很簡單,微信是目前超高活躍度的app穩穩第一名,但是在微信中點擊app下載鏈接,都是無法下載app的。因為騰訊為了自身利益,屏蔽了其他app直接在微信中下

手機截圖更吊的截圖大師去廣告漢化版搖一下即可截圖!

現在很多手機都帶截圖功能,像一些手機需要按鍵截圖,有的全面屏操作手機則需要滑動手指截圖,今天給大家分享一個搖一下手機就可以截圖的軟體 上面就是軟體的首頁,可以對截圖的聲音進行設定,如果開啟了懸浮窗許可權還可以懸浮著操作 最下面就是有個搖一搖截圖的功能,非常的使用,有的手機螢幕很大,但是手很小的話,

Android程式隱藏系統的標題欄

在編寫程式的時候,系統預設的標題欄是你的專案名稱。 比如專案名稱是:Talk 會出現Talk的標題欄。 在xml檔案預覽的時候可以去掉。方法如下: 1點選AppTheme 2 如圖選擇NoActionBar。 點選確定,效果如下圖。

手機的一些很實用的小程式,您都用過了嗎?

大家每天都在用手機,經常會下載您所需要的APP,但是手機自帶的一些很實用的小程式,您是否忽略了呢?今天給您分享一下那些比較實用的小程式。 1. 應用雙開。一般在手機設定裡,能夠多分身出一個相同的應用程式,很多朋友一臺手機用兩個微信或QQ,您不需要來回切換賬號,這樣就很方便了。 ​   2.手

vue2.0 在華為手機手機瀏覽器開啟白屏的問題

使用vue2.0 開發的單頁面網站,  在華為部分型號(p20也是....),部分安卓手機開啟頁面是空白; 網上的方法是把把es6 轉 為 es5, 當時我使用的 vue-cli , webpack 內建babel,會自動轉碼, 排查這種可能性;  根據理解可能是這些瀏覽器的核心版本比

vue2.0 在華為手機手機瀏覽器打開白屏的問題

因此 使用 sset 內置 info modules 發現 ron 內容 使用vue2.0 開發的單頁面網站, 在華為部分型號(p20也是....),部分安卓手機打開頁面是空白; 網上的方法是把把es6 轉 為 es5, 當時我使用的 vue-cli , webpack