- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import android.app.Activity;
- import android.os.Bundle;
- import android.os.Environment;
- import android.util.Log;
- import android.widget.TextView;
- /**
- * This activity shows how to write and read data from sdcard
- * @author FaYnaSoft Labs
- *
- */
- public class Main extends Activity {
- private static final String APP_TAG = "tag";
- private TextView readOutput;
- @Override
- public void onCreate(final Bundle icicle) {
- super.onCreate(icicle);
- this.setContentView(R.layout.main);
- readOutput = (TextView) findViewById(R.id.output);
- String fileName = "test-" + System.currentTimeMillis() + ".txt";
- // create /sdcard/test_folder
- File sdDir = new File(Environment.getExternalStorageDirectory().getPath());
- if (sdDir.exists() && sdDir.canWrite()) {
- File testDir = new File(sdDir.getAbsolutePath() + "/test_folder");
- testDir.mkdir();
- if (testDir.exists() && testDir.canWrite()) {
- File file = new File(testDir.getAbsolutePath() + "/" + fileName);
- try {
- file.createNewFile();
- } catch (IOException e) {
- Log.e(APP_TAG, "error creating file", e);
- }
- if (file.exists() && file.canWrite()) {
- FileOutputStream fos = null;
- try {
- fos = new FileOutputStream(file);
- fos.write("Hello, World!".getBytes());
- } catch (FileNotFoundException e) {
- Log.e(APP_TAG, "ERROR", e);
- } catch (IOException e) {
- Log.e(APP_TAG, "ERROR", e);
- } finally {
- if (fos != null) {
- try {
- fos.flush();
- fos.close();
- } catch (IOException e) {
- }
- }
- }
- } else {
- Log.e(APP_TAG, "error writing to file");
- }
- } else {
- Log.e(APP_TAG, "ERROR, unable to write to /sdcard/test_folder");
- }
- } else {
- Log.e(APP_TAG, "ERROR, /sdcard path not available");
- }
- // Read file block
- File readFile = new File(sdDir.getPath() + "/test_folder/" + fileName);
- if (readFile.exists() && readFile.canRead()) {
- FileInputStream fis = null;
- try {
- fis = new FileInputStream(readFile);
- byte[] reader = new byte[fis.available()];
- while (fis.read(reader) != -1) {
- }
- readOutput.setText(new String(reader));
- } catch (IOException e) {
- Log.e(APP_TAG, e.getMessage(), e);
- } finally {
- if (fis != null) {
- try {
- fis.close();
- } catch (IOException e) {
- }
- }
- }
- } else {
- readOutput.setText("Unable to read/write sdcard file, see logcat output");
- }
- }
- }
android 创建 并且 读取文件
最新推荐文章于 2024-07-24 21:35:56 发布