加入读写权限

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

代码

其中有数组和Arraylist两种方式取数据

package readfile;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;

import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
import android.net.Uri;
import android.os.Environment;
import android.provider.ContactsContract.RawContacts;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.provider.ContactsContract.Contacts.Data;
import android.widget.Toast;

public class readfile {
	public Object  readFromFile(Context context){       
        
        if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {             
            String foldername = Environment.getExternalStorageDirectory().getPath()+ "/";
            File folder = new File(foldername);             
            if (folder == null || !folder.exists()) {
                folder.mkdir();
            }            
            File targetFile=new File("/sdcard/Tel.txt");
            String readedStr="";             
             try{
                if(!targetFile.exists()){
                    targetFile.createNewFile();
                    return "No File error ";
                }else{
                     InputStream in = new BufferedInputStream(new FileInputStream(targetFile));
                     BufferedReader br= new BufferedReader(new InputStreamReader(in, "UTF-8"));
                     String tmp;
                     int x = 0;
//                     String [] arr = new String[60];
                     ArrayList<String> List = new ArrayList<String>();                     
                     while((tmp=br.readLine())!=null){
                         List.add(x, tmp) ;
//                    	 arr[x] = tmp;
                         System.out.println("123+"+List); 
//                    	 System.out.println("123+"+arr[x]);
                         x++;
                     }
                     br.close();
                     in.close();                      
                     return List;
//                     return tmp;
                }
             } catch (Exception e) {
                    Toast.makeText(context,e.toString(),Toast.LENGTH_LONG).show();
                    return e.toString();
             }
        }else{
            Toast.makeText(context,"未发现SD卡!",Toast.LENGTH_LONG).show();
            return "SD Card error";
        }         
    }
}    



posted on 2015-09-29 15:28  超宇  阅读(859)  评论(0编辑  收藏  举报