بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

کپی فایل از asset به قسمتی دیگر

مدیریت گفتگو
matrix2101 10 سال پیش
آخرین تغییر: 10 سال پیش

دوستان من یک library با اسم PdfViewPager از این لینک

https://github.com/voghDev/PdfViewPager

 گرفتم و می خوام یک فایل pdf رو که در قسمت assets هست در قسمتی دیگر کپی کنه که ظاهرا CacheDir هست. تا اینجا فقط یک مشکل دارم و اینه که به جای assettt در کد زیر چی باید بنویسم؟ این در واقع آدرس فایلی هست که در assets هست و قراره کپی بشه و اسم فایل هم sample.pdf هست.

CopyAsset copyAsset = new CopyAssetThreadImpl(this, new Handler());
copyAsset.copy(assettt, new File(getCacheDir(), "sample.pdf").getAbsolutePath());

adapter = new PDFPagerAdapter(this, "sample.pdf");
pdfViewPager.setAdapter(adapter);

نظرات

پاسخ‌ها 2

peyman_m1992 10 سال پیش

من تا اونجایی که فایلای کتابخانه رو نگاه کردم باید به شکل زیر بنویسی

 copyAsset.copy("sample.pdf", new File(getCacheDir(), "sample.pdf").getAbsolutePath());

یعنی اسم اول اسم فایل تو پوشه asset هست اسم دوم اسمی که میخوای تو پوشه کش ذخیره بشه

نظرات

matrix2101 10 سال پیش
فکر میکردم پیچیده تر باشه.این مشکلش حل شد. اما الان تو خط سوم کدی که نوشتم کرش میکنه. این دلیلش چیه؟
matrix2101 10 سال پیش
چطور میتونم مطمئن بشم که داخل کش کپی شده؟
peyman_m1992 10 سال پیش

برای چک کردن کپی شدن میتونی از کد زیر استفاده کنی

File file =newFile(getCacheDir()+"/sample.pdf");
if
(file.exists())
//do something

برای خط سوم هم فک کنم باید اینجوری بنویسی مطمعن نیستم

adapter = new PDFPagerAdapter(this, getCacheDir()+"/sample.pdf");

نظرات

matrix2101 10 سال پیش
الان تست کردم فایله داخل کش وجود داره و اون adapter هم که نوشتید تغییر دادم اما بازم توی همین خط کرش میکنه
matrix2101 10 سال پیش
دوستان من یه مقدار تازه کار هستم و هر کاری میکنم نمیتونم اینو درستش کنم. الان یک هفته ای میشه که به این ارور گیر کردم. اگه براتون مقدور هست این library رو دانلود کنید و ببینید چطور میشه ایرادشو برطرف کرد. من بازم تلاش می کنم که درستش کنم. ممنون

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .