<?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"
>
<EditText
android:id = "@+id/editext01"
android:layout_width = "fill_parent"
android:layout_height = "200px"
/>
<Button
android:id = "@+id/readbtn"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:text = "读取文件"
/>
<Button
android:id = "@+id/writebtn"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:text = "写入文件"
/>
</LinearLayout>
package com.creative.FileTest;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class FileTestActivity extends Activity
{
private EditText _editText = null;
private static final String FILE_NAME = "myfile.txt";//指定一个文件以供读写
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
_editText = (EditText)findViewById(R.id.editext01);
Button readBtn = (Button)findViewById(R.id.readbtn);
Button writeBtn = (Button)findViewById(R.id.writebtn);
// 读取文件
readBtn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
readFile();
}});
// 写入文件
writeBtn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
writeFile();
}});
}
// 读取文件
public void readFile()
{
try
{
FileInputStream fis = openFileInput(FILE_NAME);//打开文件
byte[] buffer = new byte[fis.available()];//创建一个字节数组buffer,通过调用FIleInputStream对象的read方法把文件写入到buffer当中
fis.read(buffer); 把buffer中的内容转换为String类型后文本就可以在EditText中显示了
_editText.setText(new String(buffer));
//fis.close();
}
catch(Exception e)
{
System.out.println("error!");
}
}
// 写入文件
public void writeFile()
{
try
{
//创建文件输入流
FileOutputStream fos = openFileOutput(FILE_NAME, Context.MODE_PRIVATE);///调用openFileInput()方法打开指定的文件并设置写入模式
// 把文本框的内容写入文件
fos.write(_editText.getText().toString().getBytes());//调用write()方法把转换为字节数组后的文本内容写入到指定的文件中。
fos.close();//最后不要忘了调用close()方法关闭处理完的文件
}
catch(Exception e)
{
System.out.println("error!");
}
}
}