Skip to content

Instantly share code, notes, and snippets.

@mirsahib
Created August 31, 2019 12:44
Show Gist options
  • Save mirsahib/c846331f8e3f004b118c2e832a911604 to your computer and use it in GitHub Desktop.
Save mirsahib/c846331f8e3f004b118c2e832a911604 to your computer and use it in GitHub Desktop.
writing a file in android device(external storage)
package com.example.read_write;
import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Environment;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.util.Log;
import android.widget.Toast;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
EditText text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text = findViewById(R.id.myText);
}
public boolean isExternalStorageWritable(){
if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())){
Log.i("State","Yes it is writable");
return true;
}else{
Log.i("State","No it is not writable");
return false;
}
}
public void writeFile(View view) {
String fileName = "myFile.txt";
if(isExternalStorageWritable() && checkPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)){
//File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS);
//File file = new File(path, "/" + fileName);
File myFile = new File(Environment.getExternalStorageDirectory(),fileName);
try{
FileOutputStream fos = new FileOutputStream(myFile);
fos.write(text.getText().toString().getBytes());
fos.close();
//fos.write(myText);
Toast.makeText(this,"File Saved",Toast.LENGTH_SHORT).show();
}catch (IOException e) {
e.printStackTrace();
}
}else {
Toast.makeText(this,"Cannot write to external storage",Toast.LENGTH_SHORT).show();
}
}
public boolean checkPermission(String permission){
int check = ContextCompat.checkSelfPermission(this,permission);
return(check== PackageManager.PERMISSION_GRANTED);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment