日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 ,

發布時間:2025/3/15 Android 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 , 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android中提供了兩個方法用來打開應用程序的數據文件夾IO流。

1FileInputStream openFileInput(String name):參數name表示某個文件名,該方法用于打開應用程序文件夾下name文件對應的輸入流

2FileOutputStream openFileOutPut(String name,int mode)該方法用于打開應用程序的文件夾下name文件對應的輸出流。

同時,Android中提供了如下方法用來對應用程序的文件夾進行操作。

1getDir(String name,int mode):用于創建name對應的子目錄。

2File getFilesDir():獲取絕對路徑。

3Stirng[] fileList():返回文件夾下所有文件。

4deleteFile(String name):刪除指定文件。

關于文件存儲,Activity提供了openFileOutput()方法可以用于把數據輸出到文件中,具體的實現過程與在J2SE環境中保存數據到文件中是一樣的。

文件可用來存放大量數據,如文本、圖片、音頻等。

默認位置:/data/data/<>/files/***.***

public void write() { try { FileOutputStream outStream=this.openFileOutput("sict.txt",Context.MODE_WORLD_READABLE); outStream.write(text.getText().toString().getBytes()); outStream.close(); Toast.makeText(MyActivity.this,"Saved",Toast.LENGTH_LONG).show(); } catch (FileNotFoundException e) { return; } catch (IOException e){ return ; } }

openFileOutput()方法的第一參數用于指定文件名稱,不能包含路徑分隔符“/如果文件不存在,Android?會自動創建它。

創建的文件保存在/data/data/<package name>/files目錄,如:?/data/data/cn.itcast.action/files/itcast.txt?,依次選擇Eclipse菜單“WindowàShow ViewàOther”,在對話窗口中展開android文件夾,選擇下面的File Explorer視圖,然后在File Explorer視圖中展開/data/data/<package name>/files目錄就可以看到該文件。

openFileOutput()方法的第二參數用于指定操作模式,有四種模式。

1Context.MODE_PRIVATE = 0

2Context.MODE_APPEND = 32768

3Context.MODE_WORLD_READABLE = 1

4Context.MODE_WORLD_WRITEABLE = 2

其中,Context.MODE_PRIVATE為默認操作模式,代表該文件是私有數據,只能被應用本身訪問,在該模式下,寫入的內容會覆蓋原文件的內容,如果想把新寫入的內容追加到原文件中,可以使用Context.MODE_APPENDContext.MODE_APPEND模式會檢查文件是否存在,存在就往文件追加內容,否則就創建新文件。Context.MODE_WORLD_READABLEContext.MODE_WORLD_WRITEABLE用來控制其他應用是否有權限讀寫該文件。MODE_WORLD_READABLE表示當前文件可以被其他應用讀取MODE_WORLD_WRITEABLE:表示當前文件可以被其他應用寫入

如果希望文件被其他應用讀和寫,可以傳入:?openFileOutput("itcast.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?,只有這樣其他程序才能正確訪問。

二 、對于私有文件只能被創建該文件的應用訪問,如果希望文件能被其他應用讀和寫,可以在創建文件時,指定Context.MODE_WORLD_READABLEContext.MODE_WORLD_WRITEABLE權限。??

Activity還提供了getCacheDir()getFilesDir()方法:?getCacheDir()方法用于獲取/data/data/<package name>/cache目錄?getFilesDir()方法用于獲取/data/data/<package name>/files目錄

?

public void read() { try { FileInputStream inStream=this.openFileInput("sict.txt"); ByteArrayOutputStream stream=new ByteArrayOutputStream(); byte[] buffer=new byte[1024]; int length=-1; while((length=inStream.read(buffer))!=-1) { stream.write(buffer,0,length); } stream.close(); inStream.close(); text.setText(stream.toString()); Toast.makeText(MyActivity.this,"Loaded",Toast.LENGTH_LONG).show(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e){ return ; } }

三 、文字填空題

? (1 滿分)

根據注釋后的內容填寫適當的代碼

String FILE_NAME = "file.txt";——————————————————- //使用openFileOutput()函數以私有模式建立文件String text = “data”;fs.write(text.getBytes());fo.flush();fo.close(); ANSWER:FileOutputStream fo=openFileOutput(FILE_NAME, 0);四、文字填空題?(1 滿分)

根據注釋后的內容填寫適當的代碼

String FILE_NAME = "file.txt";———————————————— //使用openFileInput()函數打開已有文件byte[] readBytes = new byte[fi.available()];while(fi.read(readBytes) != -1){} ANSWER:FileInputStream fi=openFileInput(FILE_NAME);五、實戰視頻、代碼
相關Java代碼 /*** 向文件中寫入內容*/try {FileOutputStream fileOutputStream =openFileOutput(FILE_NAME,0);if (et_write.getText().toString().trim().length()!=0){fileOutputStream.write(et_write.getText().toString().getBytes());}fileOutputStream.close();Toast.makeText(getApplicationContext(),"寫入成功",Toast.LENGTH_SHORT).show();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} /*** 讀取文件中的內容* By auther CYJ 2018-01-22*/try {FileInputStream fileInputStream=openFileInput(FILE_NAME);ByteArrayOutputStream byteArrayOutputStream=new ByteArrayOutputStream();byte[] buffer=new byte[1024];int length=-1;while((length=fileInputStream.read(buffer))!=-1){byteArrayOutputStream.write(buffer,0,length);}byteArrayOutputStream.close();fileInputStream.close();et_read.setText(byteArrayOutputStream.toString());Toast.makeText(getApplicationContext(),"讀取成功",Toast.LENGTH_SHORT).show();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}六 源碼鏈接

往期鏈接:<Android界面編程>? 任務一 ??醬油詩詞賞析?

??<Android界面編程>? 任務二用戶注冊界面


? ? ? ? ? ? ?<5 Android數據存儲> 任務二 應用程序數據文件夾里的文件讀寫 , - X+Y - CSDN博客?

??
?




與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 ,的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品国产成人国产三级 | 青青草视频免费观看 | 99久久亚洲精品日本无码 | jzzijzzij亚洲成熟少妇在线播放 狠狠躁日日躁夜夜躁2022麻豆 | 一本色道久久综合狠狠躁 | a久久久久 | yy111122少妇光屁股影院 | 亚洲一区二区三区在线免费观看 | 亚洲一区二区精华 | 欧美日韩高清一区 | 午夜污片 | av免费播放 | 欧美成人aaaa | 日韩制服在线 | 日本伊人色 | 西比尔在线观看完整视频高清 | 视频一区二区国产 | xxx老太太 | 色花av | 国产经典自拍 | 国产群p视频 | 麻豆一区二区99久久久久 | 青青偷拍视频 | 999精品视频| 熟女丰满老熟女熟妇 | 免费视频99 | 黄频在线播放 | 亚洲人成无码网站久久99热国产 | 土耳其xxxx性hd极品 | 国产又粗又长又黄 | 爱情岛论坛成人 | 黄色片免费 | 欧美最顶级a∨艳星 | 中文一二区| 可以免费观看av | 国产盗摄一区二区三区 | 精品视频999 | 亚洲天堂av影院 | 91精品国产一区二区 | 情侣在线视频 | 快射视频网 | 法国空姐在线观看视频 | 一级看片免费视频 | 黄视频免费观看 | 97人妻精品一区二区三区视频 | 中文字幕一区视频 | 少妇超碰| 91久久精品日日躁夜夜躁国产 | 欧美一级淫片 | 日本人妻不卡一区二区三区中文字幕 | 婷婷视频在线观看 | 在线观看亚洲大片短视频 | 欧美老女人视频 | 中文字幕在线视频观看 | 亚洲日本欧美精品 | 精品xxxx| 国产九九精品 | 欧美国产在线一区 | 四川黄色一级片 | 欧美第二区 | 亚洲天堂免费看 | 成人国产精品久久久 | 中文字幕免费在线观看视频 | 午夜在线视频观看 | 寂寞午夜影院 | 亚洲精品国产精品国自产网站 | 2020av在线 | cao在线| 日产精品久久久 | 精品国产无码在线观看 | 老司机午夜性大片 | 无码精品国产一区二区三区免费 | 久久综合免费视频 | 毛片视频网站在线观看 | 男人的天堂色 | va在线| www.激情五月 | 国产99久久九九精品无码 | 青青草原综合网 | 亚洲免费黄色片 | 日韩一级视频在线观看 | 成年网站| 妺妺窝人体色www聚色窝仙踪 | 国产精品男女 | 久操热| 女裸全身无奶罩内裤内衣内裤 | 欧美老熟妇乱大交xxxxx | 亚洲第八页 | 日韩中文字幕av在线 | 国产一区二区三区 | 全程偷拍露脸中年夫妇 | 极品少妇xxx | 国产精品无码免费播放 | 嫩草影院懂你的影院 | 名校风暴在线观看免费高清完整 | 日批黄色 | 亚洲情射 | 日本三级午夜理伦三级三 | 奇米影视四色7777 |