程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> io文件-Android 移動文件相關問題!急!!!

io文件-Android 移動文件相關問題!急!!!

編輯:編程綜合問答
Android 移動文件相關問題!急!!!

上午開始問的問題了,難道就沒人會了嗎?為什麼我這個方法移動不了?代碼是正常執行的,但是圖片卻沒移動,而且要移動的那個圖片也變成空的了。

    /**
     * 移動至指定文件夾
     * @param path 圖片源完整路徑
     * @param newPath 目標文件夾路徑
     * @param name 圖片名稱(例如:aaa.jpg)
     * @return
     */
    public static boolean moveFile(String path, String newPath, String name) {
        File oldfile = new File(path);
        if (!oldfile.exists()) {
            return false;
        }
        File desfile = new File(newPath);
        if (!desfile.exists()) {
            desfile.mkdirs();
        }
        int size = 0;
        try {
            InputStream is = new FileInputStream(oldfile); // 讀入原文件
            OutputStream os = new FileOutputStream(desfile.getAbsolutePath() + name);
            byte[] bs = new byte[1024];
            while ((size = is.read(bs)) != -1) {
                os.write(bs, 0, size);
                os.flush();
            }
            os.close();
            is.close();
            oldfile.delete();
            return true;
        } catch (IOException e) {
            e.printStackTrace();
            Log.e(TAG, "移動至指定文件夾異常失敗");
            return false;
        }
    }

最佳回答:


要移動的肯定為空了啊,因為你調了oldfile.delete();你應該在return true之前加上if(desfile.getAbsolutePath().equals(newPath)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved