Android开发学习笔记:数据存取之File浅析
2014-04-22 09:02
671 查看
Android系统中提供了一种文件读写的方法,可以将一些数据以文件的形式保存在设备中。比如一些word文档,PDF文档,图片,音频,视频文件等。
使用文件读写方法的步骤:
1.调用Context.openFileInput()方法获得Java文件输入流(FileInputStream)
2.调用Context.openFileOutput()方法获得java文件输出流(FileOutputStream)
3.使用Resources.openRawResource(R.raw.DataFile)方法返回InputStream
下面的具体实例,在一个Activity里面创建两个EditText和两个Button,第一个EditText和Button将EditText的内容写到文件file.txt文件中。第二个EditText和Button将内容从文件file.txt中读取出来显示。文件被默认保存在/data/data/package/files下面。
MainActivity.java
main.java
效果图:
在终端下输入“adb shell”命令进入Android系统查看一下我们的文件是否写入成功。
本文出自 “IT的点点滴滴” 博客,请务必保留此出处/article/4132161.html
使用文件读写方法的步骤:
1.调用Context.openFileInput()方法获得Java文件输入流(FileInputStream)
2.调用Context.openFileOutput()方法获得java文件输出流(FileOutputStream)
3.使用Resources.openRawResource(R.raw.DataFile)方法返回InputStream
下面的具体实例,在一个Activity里面创建两个EditText和两个Button,第一个EditText和Button将EditText的内容写到文件file.txt文件中。第二个EditText和Button将内容从文件file.txt中读取出来显示。文件被默认保存在/data/data/package/files下面。
MainActivity.java
package com.android.file; import java.io.FileInputStream; import java.io.FileOutputStream; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { //声明文件名字符串常量 private static final String FILE_NAME="file.txt"; private Button writeBtn,readBtn; private EditText writeText,readText; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); writeBtn = (Button)findViewById(R.id.Button1); readBtn = (Button)findViewById(R.id.Button2); writeText = (EditText)findViewById(R.id.EditText1); readText = (EditText)findViewById(R.id.EditText2); writeBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //写内容 write(writeText.getText().toString()); } }); readBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //读内容 readText.setText(read()); } }); } private String read(){ try { //实例化文件输入流对象 FileInputStream fis = openFileInput(FILE_NAME); //定义缓存数组 byte[] buffer = new byte[fis.available()]; //读到缓冲区 fis.read(buffer); return new String(buffer); } catch (Exception e) { e.printStackTrace(); } return null; } private void write(String content){ try { //实例化文件输出流 //openFileOutput(String name, int mode) //第一个参数文件名 //第二个是模式 //MODE_APPEND表示要创建的文件存在则新写入的数据不会覆盖以前的数据。 FileOutputStream fos = openFileOutput(FILE_NAME, MODE_APPEND); //写内容 fos.write(content.getBytes()); //关闭文件流 fos.close(); } catch (Exception e) { e.printStackTrace(); } } }
main.java
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="请被文本输入内容" /> <EditText android:text="" android:id="@+id/EditText1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:height="100px" /> <Button android:id="@+id/Button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="写数据" /> <EditText android:text="" android:id="@+id/EditText2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:height="100px" /> <Button android:id="@+id/Button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="读数据" /> </LinearLayout>
效果图:
在终端下输入“adb shell”命令进入Android系统查看一下我们的文件是否写入成功。
本文出自 “IT的点点滴滴” 博客,请务必保留此出处/article/4132161.html
相关文章推荐
- Android开发学习笔记:数据存取之File浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之Preference浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之Preference(健值对)浅析
- Android开发学习笔记:数据存取之SQLite浅析
- Android开发学习笔记:数据存取之Preference浅析
- Android开发学习笔记:RadioButton和CheckBox浅析
- Android开发学习笔记:Gallery和GridView浅析