*/\r
public static void main(String[] argv) throws Exception\r
{\r
- Date imgtime;\r
\r
String paramFilePath = ((argv.length < 1) ? AppParameters.FILE_PATH : argv[0]);\r
System.out.println("Param File = '"+ paramFilePath +"'");\r
ImportPicture obj = new ImportPicture();\r
+\r
+ Date imgtime;\r
obj.params = new AppParameters(paramFilePath);\r
\r
System.out.println(" - param: "+ AppParameters.IMG_TIME +"="+ obj.params.getProperty(AppParameters.IMG_TIME) );\r
\r
// 基準時刻ファイルの「更新日時」を使って時刻合わせを行う。\r
// argv[1] --> AppParameters.IMG_BASE_FILE に置き換え\r
- File baseFile = new File(obj.imgDir, obj.params.getProperty(AppParameters.IMG_BASE_FILE));\r
- if (obj.exifBase) {\r
- ImageMetadata meta = Imaging.getMetadata(baseFile);\r
- JpegImageMetadata jpegMetadata = (JpegImageMetadata)meta;\r
- if (jpegMetadata == null) {\r
- System.out.println("'"+ baseFile.getAbsolutePath() +"' にEXIF情報がありません");\r
- return;\r
- }\r
- TiffImageMetadata exif = jpegMetadata.getExif();\r
- if (exif == null) {\r
- System.out.println("'"+ baseFile.getAbsolutePath() +"' にEXIF情報がありません");\r
- return;\r
- }\r
- String dateTimeOriginal = exif.getFieldValue(ExifTagConstants.EXIF_TAG_DATE_TIME_ORIGINAL)[0];\r
- long lastModifyTime = ImportPicture.toEXIFDate(dateTimeOriginal).getTime();\r
- imgtime = new Date(lastModifyTime);\r
- }\r
- else {\r
- imgtime = new Date(baseFile.lastModified());\r
- }\r
+ imgtime = obj.adjustTime(new File(obj.imgDir, obj.params.getProperty(AppParameters.IMG_BASE_FILE)));\r
\r
// 出力ファイル\r
// argv[3] --> AppParameters.IMG_OUTPUT に置き換え\r
\r
public static final String TIME_FORMAT_STRING = "yyyy-MM-dd'T'HH:mm:ss'Z'";\r
private static final String EXIF_DATE_TIME_FORMAT_STRING = "yyyy:MM:dd HH:mm:ss";\r
-\r
+ \r
+ public void setUp() {\r
+ \r
+ }\r
+ \r
@Override\r
public void run() {\r
/**\r
}\r
\r
}\r
+ \r
+ // 基準時刻ファイルの「更新日時」を使って時刻合わせを行う。\r
+ // argv[1] --> AppParameters.IMG_BASE_FILE に置き換え\r
+ // File baseFile = new File(obj.imgDir, obj.params.getProperty(AppParameters.IMG_BASE_FILE));\r
+ private Date adjustTime(File baseFile) throws ImageReadException, IOException, ParseException {\r
+ if (exifBase) {\r
+ ImageMetadata meta = Imaging.getMetadata(baseFile);\r
+ JpegImageMetadata jpegMetadata = (JpegImageMetadata)meta;\r
+ if (jpegMetadata == null) {\r
+ System.out.println("'"+ baseFile.getAbsolutePath() +"' にEXIF情報がありません");\r
+ return null;\r
+ }\r
+ TiffImageMetadata exif = jpegMetadata.getExif();\r
+ if (exif == null) {\r
+ System.out.println("'"+ baseFile.getAbsolutePath() +"' にEXIF情報がありません");\r
+ return null;\r
+ }\r
+ String dateTimeOriginal = exif.getFieldValue(ExifTagConstants.EXIF_TAG_DATE_TIME_ORIGINAL)[0];\r
+ return new Date(ImportPicture.toEXIFDate(dateTimeOriginal).getTime());\r
+ }\r
+ else {\r
+ return new Date(baseFile.lastModified());\r
+ }\r
+ }\r
+\r
\r
/**\r
* 対象は '*.JPG' のみ対象とする\r