mamad 1 ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ سلام فرض کنید من چنتا پوشه تو پوشه assets دارم که تو هرکدوم چند تا فایله حالا چجوری پوشه هارو باهم تو حافظه گوشی کپی کنم اگه شد یکم سریع تر بگید نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Farzad Sarseifi 575 ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ برای اینکار میتوانید بدین صورت عمل کنید [shcode=java] private void copyFolder(String name) { // "Name" is the name of your folder! AssetManager assetManager = getAssets(); String[] files = null; String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { // We can read and write the media // Checking file on assets subfolder try { files = assetManager.list(name); } catch (IOException e) { Log.e("ERROR", "Failed to get asset file list.", e); } // Analyzing all file on assets subfolder for(String filename : files) { InputStream in = null; OutputStream out = null; // First: checking if there is already a target folder File folder = new File(Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name); boolean success = true; if (!folder.exists()) { success = folder.mkdir(); } if (success) { // Moving all the files on external SD try { in = assetManager.open(name + "/" +filename); out = new FileOutputStream(Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name + "/" + filename); Log.i("WEBVIEW", Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name + "/" + filename); copyFile(in, out); in.close(); in = null; out.flush(); out.close(); out = null; } catch(IOException e) { Log.e("ERROR", "Failed to copy asset file: " + filename, e); } finally { // Edit 3 (after MMs comment) in.close(); in = null; out.flush(); out.close(); out = null; } } else { } } } else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) { } else { } } // Method used by copyAssets() on purpose to copy a file. private void copyFile(InputStream in, OutputStream out) throws IOException { byte[] buffer = new byte[1024]; int read; while((read = in.read(buffer)) != -1) { out.write(buffer, 0, read); } } [/shcode] اسم پوشه خود را در داخل function مربوطه بنویسید تا کلیه فایل های داخل پوشه کپی شوند. برای کپی کردن چند پوشه فقط به هر تعدادی که نیاز دارید تابع را دوباره صدا بزنید نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۲۶ اردیبهشت ۱۳۹۴ خیلی ممنون نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۲۹ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۲۹ اردیبهشت ۱۳۹۴ یک سوال دیگه فکر کنید تو یه پوشه تو حافظه خارجی یک تعداد عکس داریم که فرمتشون معلومه چجوری عکس هایی رو که با یک عبارت خاص مثلا «ترول» شروع میشن رو تو اون پوشه حذف کنیم؟ نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۳۰ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۳۰ اردیبهشت ۱۳۹۴ حداقل بگید یه پوشه رو چه جوری از حافظه پاک کنم نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Majid Ebrahimi 19 ارسال شده در ۳۰ اردیبهشت ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۳۰ اردیبهشت ۱۳۹۴ File index = new File("masir"); String[]entries = index.list(); for(String s: entries){ File currentFile = new File(index.getPath(),s); currentFile.delete(); } نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ برای اینکار میتوانید بدین صورت عمل کنید [shcode=java] private void copyFolder(String name) { // "Name" is the name of your folder! AssetManager assetManager = getAssets(); String[] files = null; String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { // We can read and write the media // Checking file on assets subfolder try { files = assetManager.list(name); } catch (IOException e) { Log.e("ERROR", "Failed to get asset file list.", e); } // Analyzing all file on assets subfolder for(String filename : files) { InputStream in = null; OutputStream out = null; // First: checking if there is already a target folder File folder = new File(Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name); boolean success = true; if (!folder.exists()) { success = folder.mkdir(); } if (success) { // Moving all the files on external SD try { in = assetManager.open(name + "/" +filename); out = new FileOutputStream(Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name + "/" + filename); Log.i("WEBVIEW", Environment.getExternalStorageDirectory() + "/yourTargetFolder/" + name + "/" + filename); copyFile(in, out); in.close(); in = null; out.flush(); out.close(); out = null; } catch(IOException e) { Log.e("ERROR", "Failed to copy asset file: " + filename, e); } finally { // Edit 3 (after MMs comment) in.close(); in = null; out.flush(); out.close(); out = null; } } else { } } } else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) { } else { } } // Method used by copyAssets() on purpose to copy a file. private void copyFile(InputStream in, OutputStream out) throws IOException { byte[] buffer = new byte[1024]; int read; while((read = in.read(buffer)) != -1) { out.write(buffer, 0, read); } } [/shcode] اسم پوشه خود را در داخل function مربوطه بنویسید تا کلیه فایل های داخل پوشه کپی شوند. برای کپی کردن چند پوشه فقط به هر تعدادی که نیاز دارید تابع را دوباره صدا بزنید من این کد رو کپی کردم اسم پوشم که hi هست رو تو یک دکمه تو تابع نوشتم ولی هیچ چیز کپی نشد دسترسی هارو هم نوشتم قبلا از کد زیر استفاده می کردم که جواب می داد ولی همه پوشه هارو کپی می کرد [shcode=java] private void CopyAssets() { File f = new File(Environment.getExternalStorageDirectory()+"/folder11/"); if(!f.exists()){ f.mkdir(); } AssetManager assetManager = getAssets(); String[] files = null; try { files = assetManager.list(""); } catch (IOException e) { Log.e("tag", e.getMessage()); } for(String filename : files) { InputStream in = null; OutputStream out = null; try { in = assetManager.open(filename); out = new FileOutputStream(Environment.getExternalStorageDirectory().toString() +"/folder11/" + filename); copyFile(in, out); sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+ f))); in.close(); in = null; out.flush(); out.close(); out = null; } catch(Exception e) { Log.e("tag", e.getMessage()); } } } private void copyFile(InputStream in, OutputStream out) throws IOException { byte[] buffer = new byte[1024]; int read; while((read = in.read(buffer)) != -1){ out.write(buffer, 0, read); } } [/shcode] یه بار دیگه میگم توی پوشه assets چند پوشه وجود دارد که یکی از آن ها پوشه ای به نام hi است که شامل چند عکس می باشد. می خام اون پوشه رو همراه با محتویاتش توی فولدر folder11 در حافظه بریزم که قبلا این پوشه وجود ندارد یعنی مسیر عکس های درون hi بشود folder11/hi/ لطفا جواب بدید خیلی حیاتیه نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ اشکال از کجاست جواب بدین دیگه البته با تشکر از Azam Nuri نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mamad 1 ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۳۱ اردیبهشت ۱۳۹۴ دیگه زحمت نکشین حل شد اگه اون پوشه اصلی تو حافظه نباشه کار نمیکنه پس باید یکبار پوشه folder11 رو ایجاد کنیم بعد پوشه بعدی رو توش بسازیم همزمان نمیشه با تشکر از خودم:D:D:D:D:D:D:D:D نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .