【发布时间】:2016-10-22 14:59:12
【问题描述】:
我在哪里可以从 MediaStore 获取视频的拍摄日期?我从 MediaStore 获得了以下字段。
MediaStore.Video.Media.DATE_MODIFIED
MediaStore.Video.Media.DATE_TAKEN
MediaStore.Video.Media.DATE_ADDED
那些字段似乎返回了默认值 -
dateModified: 1477043336
dateTaken: 1477043336000
dateAdded: 1477043352
格式化日期 -
dateModified: 01/01/1970
dateTaken: 01/01/1970
dateAdded: 01/01/1970
我仔细检查了股票库 > 随机视频文件,我确实看到了正确的日期。我查看了 MediaStore 中的视频列,但没有看到任何其他日期正确的列。
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
String formattedDate = dateFormat.format(new Date(row.getColumnIndex(MediaStore.Video.Media.DATE_MODIFIED)));
String dateModified = dateFormat.format(new Date(row.getColumnIndex(MediaStore.Video.Media.DATE_MODIFIED)));
String dateTaken = dateFormat.format(new Date(row.getColumnIndex(MediaStore.Video.Media.DATE_TAKEN) * 1000L));
String dateAdded = dateFormat.format(new Date(row.getColumnIndex(MediaStore.Video.Media.DATE_ADDED) * 1000L));
Log.d(TAG, "dateModified: "+dateModified);
Log.d(TAG, "dateTaken: "+dateTaken);
Log.d(TAG, "dateAdded: "+dateAdded);
Log.d(TAG, "dateModified: "+row.getString(row.getColumnIndex(MediaStore.Video.Media.DATE_MODIFIED)));
Log.d(TAG, "dateTaken: "+row.getString(row.getColumnIndex(MediaStore.Video.Media.DATE_TAKEN)));
Log.d(TAG, "dateAdded: "+row.getString(row.getColumnIndex(MediaStore.Video.Media.DATE_ADDED)));
【问题讨论】:
-
您是否在查询中请求这些列?如果您查看纯数值(而不是尝试将它们格式化为日期),您会看到什么值?
-
是的,我在最初的帖子中附加了来自 MediaStore 的原始数据。
标签: android date video mediastore last-modified