android 创建 并且 读取文件

    技术2022-05-13  12

    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");          }      }  }  


    最新回复(0)