一、从文件中读
1、首先利用openFileInput()方法,创建一个FileInputStream FileInputStream fileInputStream=openFileInput("user.txt") 2、利用fileInputStream.available()方法检测已经打开的文件的二进制数据流最大值,用于创建数组 byte[] bytes=new byte[fileInputStream.available()] 3、把读到的信息存储进数组 fileInputStream.read(bytes) 4、关闭文件 fileInputStream.close()
二、向文件中写
1、利用openFileOutput方法,创建一个FileOutputStream FileOutputStream fileOutputStream=openFileOutput("user.txt",MODE_APPEND) 参数MODE_APPEND表示在文件内原有内容的后面继续写 参数MODE_PRIVATE表示删除文件内原有内容重新写 2、剩下的工作就是把准备好的二进制文件利用fileOutputStream.write()方法写进文件,写完之后把文件关闭。
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button button1,button2;
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1=findViewById(R.id.button1);
button2=findViewById(R.id.button2);
editText=findViewById(R.id.editTextTextPersonName);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
//button1 向文件中写
case R.id.button1:
try {
FileOutputStream fileOutputStream=openFileOutput("user.txt",MODE_APPEND);
String content=editText.getText().toString().trim();
fileOutputStream.write(content.getBytes());
fileOutputStream.close();
}catch (Exception e){
e.printStackTrace();
}
break;
//button2 从文件中读
case R.id.button2:
try {
FileInputStream fileInputStream=openFileInput("user.txt");
byte[] bytes=new byte[fileInputStream.available()];
fileInputStream.read(bytes);
String content=new String(bytes);
Log.i("fis",content);
fileInputStream.close();
}catch (Exception e){
e.printStackTrace();
}
break;
}
}
}
三、SharedPreferences适合小规模存取(一套用户名和密码)
package com.example.sharedpreferences;
import androidx.appcompat.app.AppCompatActivity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import java.util.Locale;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button button1,button2;
EditText editText;
SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1=findViewById(R.id.button1);
button2=findViewById(R.id.button2);
editText=findViewById(R.id.editText1);
sharedPreferences=getSharedPreferences("A_FileName",MODE_PRIVATE);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button1:
SharedPreferences.Editor editor=sharedPreferences.edit();
editor.putString("name",editText.getText().toString().trim());
editor.commit();
break;
case R.id.button2:
String username=sharedPreferences.getString("name","N/A");
editText.setText(username);
break;
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)