說明,測(cè)試機(jī)型為小米Note4,miui系統(tǒng)
getFileDir
- 測(cè)試代碼
File fileDir = getFileDir();
tv1.stText(fileDir.getPath());
- 測(cè)試結(jié)果
得到getFileDir返回結(jié)果
/data/user/0/test.example.testfile/files
OutputStream&openFileOutput
- 將一段String寫入到app數(shù)據(jù)目錄下的文件中
OutputStream outStream = openFileOutput("test.dat",MODE_PRIVATE);
String contents = "hello this a segment of test code,welcome";
outStream.write(contents.getBytes());
outStream,flush();
outStream.close();
- 代碼分析
OutputStream outStream = openFileOutput("test.dat",MODE_PRIVATE);
建立輸出流
輸出流,一個(gè)到磁盤文件的映射
文件,磁盤上的一段區(qū)域
outStream,flush();
客戶端主動(dòng)將輸出流寫到磁盤上
InputStream&ByteArrayOutputStream
- 從磁盤中讀取數(shù)據(jù)到內(nèi)存中
InputStream inStream = new InputStream("test.dat");
byte[] buffer = new byte[1024];
int len = -1;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
while((len = inStream.readBuffer(buffer)) != -1){
baos.write(buffer,0,len);
}
inStream.close();
baos.close();
we generate baos,a byteArray which contains data from file.
- 代碼分析
InputStream inStream = newInputStream("test.dat");
建立文件輸入流,數(shù)據(jù)入端為磁盤文件
len = inStream.readBuffer(buffer)
確認(rèn)輸入流的終端,即一段內(nèi)存區(qū)域,完成數(shù)據(jù)流的讀取與寫入