Android_SD卡文件操作

《1》  //打开SDcard下目录的某个指定文件
   // filename为指定的文件名
File file = newFile(Enviroment.getExternalStorageDirectory(),filename);
  


   《2》判断SD卡是否存在并到/sdcard目录下
         返回的String=/sdcard
           
[java] view plaincopyprint?
private String isSdcard(){  
  
  
            FilesdcardDir=null;  
            booleanisSDExist=Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);  
            if(isSDExist){  
                    //如果存在SDcard 就找到跟目录  
                    sdcardDir=Environment.getExternalStorageDirectory();  
  
  
                    returnsdcardDir.toString();  
            }else{  
                    returnnull;  
            }  
             
     }  
      


 《3》获得某个目录下得所有文件列表
              //打开文件夹 path为一个文件夹的路径 如:/sdcard
      File file = new File(sdpath);
      //获取该文件夹中文件目录列表
                 File[] files = file.listFiles();
              //获得某个文件的文件名
               String filename=file.getName();
              //文件名中最后的一个.在文件名的位置
               int idx =filename.lastIndexOf(".");
             //获得filename的后缀名
                Stringsuffer=filename.substring(idx+1,filename.length);
 
        《4》根据给定的手机路径path 打开这个path中的文件并把它转变成Bitmap格式
              
    
[java] view plaincopyprint?
FileInputStreamfis=new FileInputStream(path);  
                   BufferedInputStreambis=new BufferedInputStream(fis);  
                   Bitmapbitmap=BitmapFactory.decodeStream(bis);  


           《5》  将一个给定的网络地址URL中获取图片的byte[]
                         讲一个InputStream转化为一个byte[]
                        
 
[java] view plaincopyprint?
publicstatic byte[] readInputstream(InputStream inputStream) throws Exception{  
         byte[] buffer=new byte[1024];  
           int len;  
           ByteArrayOutputStream BAOS=newByteArrayOutputStream();  
                   while((len=inputStream.read(buffer))!=-1){  
                           BAOS.write(buffer,0,len);  
                   }  
                   inputStream.close();  
          return BAOS.toByteArray();  
 }  


                             再将一个URL中获取InputStream
                  
    
[java] view plaincopyprint?
publicstatic byte[] getImage(String path) throws Exception {  
           //Stringpath1=ImageActivity.edit.getText().toString();  
           //URLurl = new URL(path1);  
            path="http://s2.lashouimg.com/zt/201204/13/133429592467512700.jpg";  
            
           URLurl=new URL(path);  
           HttpURLConnectionconn = (HttpURLConnection)url.openConnection();  
           conn.setRequestMethod("GET");  
           conn.setConnectTimeout(5* 1000);  
           InputStreaminStream = conn.getInputStream();//通过输入流获取图片数据  
           returnInputstreamtool.readInputstream(inStream);//得到图片的二进制数据  
         
    }  
                                                                                                              


  
[java] view plaincopyprint?
《6》将一个byte[]数据保存到SD卡目录里  
         
                                  byte[] data;//data是1.jpg的数据字节  
                                              Stringfilename="1.jpg";  
                                              Filefilelocal=new File(Environment.getExternalStorageDirectory(),filename);  
                                              FileOutputStreamFos=new FileOutputStream(filelocal);  
                                              Fos.write(data);  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值