Android-IO

1.申请SD卡读写权限
    <!-- SD卡删除,创建文件权限 -->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    <!-- SD卡写数据权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
2.Main.xml
<!-- IO文件操作 -->
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/file_action" />
    
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:id="@+id/filename"/>
    
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="文件说明" />
    
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:minLines="3"
        android:id="@+id/file_content"/>
    
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="保存"
        android:id="@+id/file_btn"
        />
3.string.xml
  <!-- IO文件操作 -->
    <string name="file_action">文件操作</string>
    <string name="filename">请输入文件名称</string>
    <string name="success">操作成功</string>
    <string name="error">操作失败</string>
    <string name="sdcardError">SD不存在或者处于写保护状态</string>

4.event
 private final class FileBtnEvent implements View.OnClickListener{

    public void onClick(View v) {
        EditText fileNameText=(EditText) findViewById(R.id.filename);
        EditText fileConText=(EditText) findViewById(R.id.file_content);
        String filename=fileNameText.getText().toString();
        String fileContent=fileConText.getText().toString();
        FileService service=new FileService(getApplicationContext());
        /*//手机内存中写文件
         * try {
            service.save(filename,fileContent);
        } catch (Exception e) {
            Toast.makeText(getApplicationContext(),R.string.error,1).show();
        }
        //显示操作成功
        Toast.makeText(getApplicationContext(),R.string.success,1).show();
        */
        
        //SD卡写文件
        try {
            //判断SD已经插入并且没有写保护
            if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
                service.saveToSDCard(filename,fileContent);    
                Toast.makeText(getApplicationContext(),R.string.success,1).show();
            }else{
                //SD卡不存在或者写保护提示
                Toast.makeText(getApplicationContext(),R.string.sdcardError,1).show();
            }
        } catch (Exception e) {
            Toast.makeText(getApplicationContext(),R.string.error,1).show();
        }
        
    }
5.MainActvity.java
 //IO文件操作
 Button fileBtn=(Button)this.findViewById(R.id.file_btn);
 fileBtn.setOnClickListener(new FileBtnEvent());


你可能感兴趣的:(Android-IO)