现在的位置: 首页 > 综合 > 正文

android文件操作

2014年01月20日 ⁄ 综合 ⁄ 共 1932字 ⁄ 字号 评论关闭

这里会用到三个android包:File, FileInputStream, FIleOutputStream.

package com.example.filetest;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

	final String FILE_PATH = "data/data/com.example.filetest/";
	final String FILE_NAME = "test.txt";
	final String TAG = "MainActivity";
	final String TEXT_ENCODING = "UTF-8";

	File file;
	FileOutputStream out;
	FileInputStream in;
	TextView tv = null;
	String display;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //创建文件
        file = new File(FILE_PATH, FILE_NAME);
        try {
			file.createNewFile();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        //打开文件file的out
        try {
			out = new FileOutputStream(file);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        String infoTowrite = "This is my file test, thanks!";
        //将字符串转换成byte数组
        try {
			out.write(infoTowrite.getBytes());
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        //关闭IO
        try {
			out.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}


        /**************将刚刚写入的数据显示到textview中**************/
        //打开文件的FileInputStream;
        try {
			in = new FileInputStream(file);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        //将文件全部读取出来
        byte[] temp =new byte[(int) file.length()];
        try {
			in.read(temp);
			in.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

        //将byte数组的内容转换成string类型
        display = new String(temp);
        Log.e(TAG, "应该显示的为:" + display);

        setContentView(R.layout.activity_main);

        tv = (TextView)findViewById(R.id.textView);
        tv.setText(display);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

}

抱歉!评论已关闭.