首页 > 代码库 > 文件存储详解
文件存储详解
将数据存储到文件中:
OpenFileOutput(文件名,文件的操作模式);
操作模式:
MODE_PRIVATE:文件同名的时候,写入的内容会覆盖原文件中的内容
MODE_APPEND:如果文件存在就往文件中添加内容,写入内容不会覆盖原文件内容
openFileOutput()方法返回的是一个FileOutputStream对象,得到了这个对象之后就可以使用Java流的方式将数据写入到文件中了.
通过openFileOutput()方法能够得到一个FileOutputStream对象,
然后再借助FileOutputStream构建出一个OutputStreamWriter对象,接着再使用OutputStreamWriter构建出一个BufferedWriter对象
这样就可以通过BufferedWriter来将文本内容写入到文件中了.
从文件中读取数据:
通过openFileInput()方法获取到了一个FileInputStream对象
然后借助FileInputStream又构建出了一个InputStreamReader对象,接着再使用InputStreamReader构建出一个BufferedReader对象
这样就可以通过BufferedReader进行一行行地读取
把文件中所有的文本内容全部读取出来并存放在一个StringBuilder对象中
最后将读取到的内容返回就可以了
package com.jia.filepersistencetest; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.text.TextUtils; import android.view.Menu; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText edit; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); edit = (EditText) findViewById(R.id.edit); String inputText = load(); if (!TextUtils.isEmpty(inputText)) { edit.setText(inputText); edit.setSelection(inputText.length()); Toast.makeText(this, "Restoring succeeded", Toast.LENGTH_LONG) .show(); } } @Override protected void onDestroy() { String inputText = edit.getText().toString(); save(inputText); super.onDestroy(); } public void save(String inputText) { // String data = http://www.mamicode.com/"Data to save";>文件存储详解
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。