把文件保存到 sdcard

直接上代码:

package com.example.test;

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

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

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //要保存的文件名称和文件内容
        String fileName = "test.txt";
        String content = "This is a test.";
        
        //推断sdcard是否存在
        String state = Environment.getExternalStorageState();
        if(state.equals(Environment.MEDIA_MOUNTED)) {
        	//获取SDCard文件夹
        	File sdcardPath = Environment.getExternalStorageDirectory();
        	
        	File file = new File(sdcardPath, fileName);
        	FileOutputStream fos;
			try {
				fos = new FileOutputStream(file);
				fos.write(content.getBytes());
				fos.close();
			} catch (FileNotFoundException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}
			Toast.makeText(this, "保存成功", Toast.LENGTH_SHORT).show();
        } else {
        	Toast.makeText(this, "sdcard不存在获取不可写入", Toast.LENGTH_SHORT).show();
        }
        
    }
}

加入权限:

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


posted @ 2017-06-15 10:32  jhcelue  阅读(180)  评论(0编辑  收藏  举报