Android studio 43 文件存儲到sdcard download文件夾下

第一步
在模擬器或手機中 應用管理設置手機存儲權限打開。

第二步 AndroidManifest.xml
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>



第三步
activity——main.xml
    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Button" />

第四步
MainActivity.java
package com.example.filewr02;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

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

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btn = findViewById(R.id.button);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 響應事件
                //Toast.makeText(MainActivity.this,"測試按鈕",Toast.LENGTH_SHORT).show();
                Log.i("MainActivity", "===========================================================================");
                Log.i("MainActivity", Environment.getExternalStorageState());
                if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
                    Log.i("MainActivity", "SD not found..............................................");
                    return;//若SD卡不可用 直接返回。
                }

                //獲取SD卡根目錄
                File file = Environment.getExternalStorageDirectory();
                Log.i("MainActivity", "============================file weizhi =====================================================");
                Log.i("MainActivity", Environment.getExternalStorageDirectory().toString());

                try{
                    FileOutputStream outStream = new FileOutputStream("/sdcard/Download/"+"xxxd222"+".txt",true);
                    OutputStreamWriter writer = new OutputStreamWriter(outStream,"gb2312");
                    writer.write("sssssssssssssdddddddddddddddddddddddddddd");
                    writer.write("/n");
                    writer.flush();
                    writer.close();//記得關閉

                    outStream.close();
                }
                catch (Exception e)
                {
                    Log.e("m", "file write error");
                }




            }
        });

    }
}




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