Android学习11
Android存储概念
File内部存储
通过file=openFileOutput()获得,将数据存储在data/data/+包名+files下面。
layout布局文件:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="15dp"> <EditText android:id="@+id/et_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="输入内容"/> <Button android:id="@+id/btn_save" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:text="保存" android:textSize="20sp"/> <Button android:id="@+id/btn_show" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="显示" android:textSize="20sp"/> <TextView android:id="@+id/tv_content" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp"/> </LinearLayout>
activity_file
Activity:
package com.example.helloworld.datastorage; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.example.helloworld.R; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class FileActivity extends AppCompatActivity { private EditText mEtName; private Button mBtnSave,mBtnShow; private TextView mTvContent; private final String mFileName = "test.txt"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_file); mEtName = findViewById(R.id.et_name); mBtnSave = findViewById(R.id.btn_save); mBtnShow = findViewById(R.id.btn_show); mTvContent = findViewById(R.id.tv_content); mBtnSave.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { save(mEtName.getText().toString()); } }); mBtnShow.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mTvContent.setText(read()); } }); } //存储数据 private void save(String content){ FileOutputStream fileOutputStream = null; try { fileOutputStream = openFileOutput(mFileName,MODE_PRIVATE); fileOutputStream.write(content.getBytes()); } catch (IOException e) { e.printStackTrace(); } finally { if(fileOutputStream != null){ try{ fileOutputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } } //读取数据 private String read(){ FileInputStream fileInputStream = null; try { fileInputStream = openFileInput(mFileName); byte[] buff = new byte[1024]; //用StringBuilder来实现字符串拼接 StringBuilder sb = new StringBuilder(); int len = 0; while((len = fileInputStream.read(buff)) > 0){ sb.append(new String(buff,0,len)); } return sb.toString(); } catch (IOException e) { e.printStackTrace(); }finally { if(fileInputStream != null){ try{ fileInputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } return null; } }
FileActivity
相关推荐
huha 2020-10-16
xfcyhades 2020-11-20
sgafdsg 2020-11-04
Michael 2020-11-03
fengyeezju 2020-10-14
ziyexiaoxiao 2020-10-14
业余架构师 2020-10-09
OuNuo0 2020-09-29
moses 2020-09-22
Angelia 2020-09-11
qinxu 2020-09-10
刘炳昭 2020-09-10
Nostalgiachild 2020-09-07
Nostalgiachild 2020-08-17
leavesC 2020-08-14
一青年 2020-08-13
AndroidAiStudy 2020-08-07
ydc0 2020-07-30
绿豆饼 2020-07-28