بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
کمک در مورد ذخیره سازی فایل
من چنین کدی دارم
public String SaveScreenshot(){
Random random = new Random();
String path = Environment.getExternalStorageDirectory().toString() + "/EidPics/";
File dir = new File(path);
if (!dir.exists())
dir.mkdirs();
Bitmap bitmap;
_root.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(_root.getDrawingCache());
_root.setDrawingCacheEnabled(false);
path += String.valueOf(random.nextInt(1000)) + ".png";
OutputStream fout = null;
File imageFile = new File(path);
try {
fout = new FileOutputStream(imageFile);
bitmap.compress(Bitmap.CompressFormat.PNG, 90, fout);
fout.flush();
fout.close();
} catch (FileNotFoundException e) {
return null;
} catch (IOException e) {
return null;
}
return "file://" + imageFile.getAbsolutePath();
}
public void click (){
btshare.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String FileName = SaveScreenshot();
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse(FileName));
startActivity(Intent.createChooser(intent, getString(R.string.ShareBy)));
}
});
}
این کد از لایه من اسکرین میگیره و ارسال میکنه اگه دفعه بعدی بخوام اسکرین بگیرم عکس قبلی رو پاک میکنه و چایگزین میکنه . من میخوام هر اسکرین که گرفته میشه به ترتیب در فایل مورد نظر من ذخیره شه .
و img 2 , img1 به همین ترتیب
کد بالا رو چطور باید تغییر بدم ؟؟؟
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
JSONObject
9 سال پیش
+3
0
به جای اسم رندوم تاریخ دستگاه رو بده
Calendar c = Calendar.getInstance();
String filename = c.get(Calendar.YEAR) + "_"
+ c.get(Calendar.MONTH) + "_"
+ c.get(Calendar.DAY_OF_MONTH);// ساعت و دقیقه و ثانیه رو هم اضافه کن
String filePath = path + filename + ".png";
File imageFile = new File(filePath);
//TODO what you want
یا یه اینتیجر تو Preferences گوشی بساز که آخرین ایندکسی که باهاش اسم فایل رو ساختی نگه داره و با هر بار ساختن اسم ازش استفاده کنی و مقدارش رو یکی ببری بالاتر
ولی به نظرم تاریخ بذاری رو اسم عمومی تر و عرف تر و منطقی تره
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .