Android讀寫文本文件

將一個文本文件寫入到/data/data/應用名下的files文件夾下的info.txt文件裏。

package com.example.test;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity {
	private TextView textView;
	private static final String FINEMAME = "info.txt";
	private static final String DIR = "myfile";

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		FileOutputStream outputStream = null;
		try {
			outputStream = super
					.openFileOutput(FINEMAME, Activity.MODE_PRIVATE);
		} catch (FileNotFoundException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		PrintStream stream = null;
		stream = new PrintStream(outputStream);
		stream.println("姓名:");
		stream.println("年齡:");
		stream.println("性別:");
		stream.println("職位:");
		stream.close();
	}
}


將info.txt文件中的內容讀出到textview中

package com.example.test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity {
	private TextView textView;
	private static final String FINEMAME = "info.txt";

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		textView = (TextView) findViewById(R.id.textView);
		File file = new File(FINEMAME);
		FileInputStream inputStream = null;
		try {
			inputStream = super.openFileInput(FINEMAME);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		Scanner scanner = new Scanner(inputStream);
		StringBuffer sb = new StringBuffer();
		while (scanner.hasNext()) {
			sb.append(scanner.next()).append("\n");
		}
		scanner.close();
		textView.setText(sb);
	}
}


將數據寫入到內存卡中,注意在android清單文件加入寫sdcard的權限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

package com.example.test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;

public class MainActivity extends Activity {
	private TextView textView;
	private static final String FINEMAME = "info.txt";
	private static final String DIR = "myfile";

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		// 如果sd卡存在
		if (Environment.getExternalStorageState().equals(
				Environment.MEDIA_MOUNTED)) {
			File file = new File(Environment.getExternalStorageDirectory()
					+ File.separator + DIR + File.separator + FINEMAME);
			// 如果目錄不存在就創建目錄
			if (!file.getParentFile().exists()) {
				file.getParentFile().mkdir();
			}
			PrintStream stream = null;
			try {
				stream = new PrintStream(new FileOutputStream(file));
			} catch (FileNotFoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			stream.println("姓名:");
			stream.println("年齡:");
			stream.println("性別:");
			stream.close();
		}
	}
}


從sdcard讀取數據


package com.example.test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;

public class MainActivity extends Activity {
	private TextView textView;
	private static final String FINEMAME = "info.txt";
	private static final String DIR = "myfile";

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		// 如果sd卡存在
		if (Environment.getExternalStorageState().equals(
				Environment.MEDIA_MOUNTED)) {
			textView = (TextView) findViewById(R.id.textView);
			File file = new File(Environment.getExternalStorageDirectory()
					+ File.separator + DIR + File.separator + FINEMAME);
			FileInputStream inputStream = null;

			Scanner scanner = null;
			try {
				scanner = new Scanner(new FileInputStream(file));
			} catch (FileNotFoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			StringBuffer sb = new StringBuffer();
			while (scanner.hasNext()) {
				sb.append(scanner.next()).append("\n");
			}
			scanner.close();
			textView.setText(sb);
		}
	}
}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章