1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Android的读写文件权限

Android的读写文件权限

时间:2018-12-02 03:28:30

相关推荐

Android的读写文件权限

/**测试没通过* 写文件* @param str*/public void write(String str){File file = new File(Environment.getExternalStorageDirectory()+"/cardvalue","config.txt"); FileWriter fw;try {if (file.exists()){file.delete();file.createNewFile();}fw = new FileWriter(file);fw.write(str);fw.flush();fw.close();} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 读文件* @return*/public String read(){File file = new File(Environment.getExternalStorageDirectory()+"/cardvalue","config.txt"); FileReader fr ;if (!file.exists()){return null ;}else{try {fr = new FileReader(file);char buffer[] = new char[(int) file.length()];fr.read(buffer);String str = new String(buffer);fr.close();return str;} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return null;}}

下面是读取文件和写入文件的程序代码:读取文件:[java] view plain copypublic void readInfo(View view){ File file = new File("/data/data/com.aaron.login/files/public.txt"); FileInputStream fis; try { fis = new FileInputStream(file); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); String result = br.readLine(); Toast.makeText(MainActivity.this, result, Toast.LENGTH_LONG).show(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Toast.makeText(MainActivity.this, "读取文件失败", Toast.LENGTH_LONG).show(); } } 写入文件:[java] view plain copypublic void writeInfo(View view){ File file = new File("/data/data/com.aaron.login/files/public.txt"); FileOutputStream fos; try { fos = new FileOutputStream(file); fos.write("hahaha".getBytes()); fos.close(); Toast.makeText(MainActivity.this, "写入文件成功", Toast.LENGTH_LONG).show(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Toast.makeText(MainActivity.this, "写入文件失败", Toast.LENGTH_LONG).show(); } } File file = new File("/data/data/com.aaron.login/files/public.txt");同File file = new File(Context.getFileDir(), "public.txt");若要存储文件到SD卡:File file = new File("/sdcard/info.txt");

/ztp800201/article/details/7322110

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

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

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

成功案列:

package com.example.readwrite;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import android.app.Activity;import android.os.Bundle;import android.os.Environment;import android.util.Log;import android.widget.Toast;public class MainActivity extends Activity {private final static String PATH = "/sdcard/digu"; private final static String FILENAME = "/notes.txt";String text1 ="888888888888888888888888888888888";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);onWrite("www888888888888888888888888888888888");readtex();}//向sdcard写文件/** * 写文件 */ private void onWrite(String str) { try { Log.e("555555555555555", "Start Write"); //1.判断是否存在sdcard if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { //目录 File path = new File(PATH); //文件 File f = new File(PATH + FILENAME); if(!path.exists()){ //2.创建目录,可以在应用启动的时候创建 path.mkdirs(); } if (!f.exists()) { //3.创建文件 f.createNewFile(); }else if(f.exists()){f.delete();f.createNewFile(); } OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(f)); //4.写文件,从EditView获得文本值 osw.write(str); osw.close(); } } catch (Exception e) { Log.d("66666666666666", "file create error"); } }public String readtex(){//文件 File f = new File(PATH + FILENAME); FileInputStream is;try {is = new FileInputStream(f);ByteArrayOutputStream bos = new ByteArrayOutputStream();byte[] array = new byte[1024];int len = -1;while( (len = is.read(array)) != -1){bos.write(array,0,len);bos.close();is.close();Toast.makeText(MainActivity.this,"读出来的数据" +bos.toString(), Toast.LENGTH_SHORT).show();Log.e("读出来的数据", bos.toString());return bos.toString();}} catch (IOException e) {e.printStackTrace();}return null;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。