我正在android中编写一个camera2应用程序,当我尝试保存图像时,有些东西会在'.jpg'之前的文件名末尾添加额外的数字
我有一种感觉,因为这个createTempFile()方法,但这是我的代码:
File createImageFile() throws IOException {
++image_id;
String timestamp = new SimpleDateFormat("yyyyMMdd").format(new Date());
String subFolder = "";
if(pref_session_unique_gallery.equals("yes")){
if(event_name != null){
subFolder = event_name;
} else {
subFolder = timestamp;
}
} else {
subFolder = "_GEN";
}
if(event_name == null){
imageFileName = "CPB_"+timestamp+"-"+image_id;
} else {
imageFileName = "CPB_"+event_name+"_"+timestamp+"-"+image_id;
}
imageStorageDirectory = Environment.getExternalStorageDirectory() + File.separator + "CPB" + File.separator + subFolder;
imageFinalFileName = imageFileName;
Toast.makeText(getApplicationContext(), imageStorageDirectory + "/" + imageFileName, Toast.LENGTH_LONG).show();
File storageDirectory = new File(imageStorageDirectory);
storageDirectory.mkdir();
File image = File.createTempFile(imageFileName, ".jpg", storageDirectory);
return image;
}
Run Code Online (Sandbox Code Playgroud)
当我读到吐司时,它给了我正确的路径和文件名,但是当我查看文件夹视图时,图片上有很多额外的数字.
例如,图片名称应该是,CPB_20160120-1.jpg但它当前读取CPB_20160120-1484291604.jpg如果它有所不同,文件保存在6:37 PM
还有两个例子:
应该是:CPB_20160120-2.jpg
是:CPB_20160120-22140921986.jpg
应该是:CPB_20160120-3.jpg
是:CPB_20160120-3-965716644.jpg
当文件保存时,不确定这些额外数字来自何处...
createTempFile()如源代码所示,这些随机数是由显式生成的.
您可能不想使用临时文件,因此我建议您创建普通文件:
File image = new File(storageDirectory, imageFileName + ".jpg");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1446 次 |
| 最近记录: |