Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android讀寫SD卡,android讀寫sd

Android讀寫SD卡,android讀寫sd

編輯:關於android開發

Android讀寫SD卡,android讀寫sd


  SD卡的讀寫是我們在開發Android 應用程序過程中最常見的操作。下面介紹SD卡的讀寫操作方式:

   1. 獲取SD卡的根目錄

String  sdCardRoot = Environment.getExternalStorageDirectory().getAbsolutePath();   
// 何問起 hovertree.com

 2. 在SD卡上創建文件夾目錄

/** 
 * 在SD卡上創建目錄 
 */  
public File createDirOnSDCard(String dir)  
{  
    File dirFile = new File(sdCardRoot + File.separator + dir +File.separator);  
    Log.v("createDirOnSDCard", sdCardRoot + File.separator + dir +File.separator);  
    dirFile.mkdirs();  
    return dirFile;  
}  
// 何問起 hovertree.com

 3. 在SD卡上創建文件

/** 
 * 在SD卡上創建文件 
 */  
public File createFileOnSDCard(String fileName, String dir) throws IOException  
{  
    File file = new File(sdCardRoot + File.separator + dir + File.separator + fileName);  
    Log.v("createFileOnSDCard", sdCardRoot + File.separator + dir + File.separator + fileName);  
    file.createNewFile();  
    return file;  
}  // 何問起 hovertree.com

4.判斷文件是否存在於SD卡的某個目錄

/** 
 * 判斷SD卡上文件是否存在 
 */  
public boolean isFileExist(String fileName, String path)  
{  
    File file = new File(sdCardRoot + path + File.separator + fileName);  
    return file.exists();  
}  // 何問起 hovertree.com

  5.將數據寫入到SD卡指定目錄文件

// 何問起 hovertree.com
/* 寫入數據到SD卡中 
     */  
    public File writeData2SDCard(String path, String fileName, InputStream data)  
    {  
        File file = null;  
        OutputStream output = null;  
          
        try {  
            createDirOnSDCard(path);  //創建目錄  
            file = createFileOnSDCard(fileName, path);  //創建文件  
            output = new FileOutputStream(file);  
            byte buffer[] = new byte[2*1024];          //每次寫2K數據  
            int temp;  
            while((temp = data.read(buffer)) != -1 )  
            {  
                output.write(buffer,0,temp);  
            }  
            output.flush();  
              
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
        finally{  
            try {  
                output.close();    //關閉數據流操作  
            } catch (Exception e2) {  
                e2.printStackTrace();  
            }  
        }  
          
        return file;  
    } 

   one more important thing:

      對SD卡的操作,必須要申請權限:    

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

推薦:http://www.cnblogs.com/roucheng/p/3504465.html

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved