簡體   English   中英

Android寫入SD卡

[英]android writing to sdcard

我無法寫SDCARD。 我無法創建目錄或文件,清單中缺少此內容

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

這在我的代碼中

btnSave.setOnClickListener(new View.OnClickListener() 
        {
            public void onClick(View arg0) 
            {   
                // Create a directory; all ancestor directories must exist
                    boolean success = (new File("/sdcard/Methods/")).mkdirs();
                //create file   
                    try{
                    File myFile = new File("/sdcard/Methods/Method 1 Square.xml");
                    File file = myFile;
                        // Create file if it does not exist
                        boolean success1 = file.createNewFile();}   
                    catch (IOException e) 
                        {}
                //write to file
                    try {
                        BufferedWriter out = new BufferedWriter(new FileWriter("/sdcard/Methods/Method 1 Square.xml"));
                        out.write ("<?xml version=\"1.0\"?>");
                        out.write ("<?mso-application progid=\"Excel.Sheet\"?>");
                        out.write ("Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\"");
                        out.close();
                    } // end try
                    catch (IOException e) 
                    {
                    } // end catch

            } // end public

        }); // end SAVE Button

第一件事:

只需檢查“成功”變量,是否返回true即可

第二件事:

由於已經對/ sdcard進行了硬編碼,因此我建議您使用以下目錄來獲取目錄: Environment.getExternalStorageDirectory()因為在某些設備中sd卡的根目錄是/ mnt / sdcard,因此上述獲取根目錄的方法。

第三件事:

您應該首先檢查SD卡是否已安裝。

例:

File sdCard = Environment.getExternalStorageDirectory();
File dir = new File (sdcard.getAbsolutePath() + "/dir/subdir");  // in your case, just give /Methods

dir.mkdirs();
File file = new File(dir, "filename");  // in your case, just give "Method 1 Square.xml"

FileOutputStream f = new FileOutputStream(file);

問題可能是路徑中的目錄不存在。 使用該FileWriter構造函數,如果文件不存在,則創建該文件,但不包括目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM