Irfanview and Jhead will both do what you want.
Both are free.
Links to both below.
jhead is command line driven or can be called by other processes.
The Irfanview version can be accessed from a command line or internally in a batch or file by file.
The following Irfanview example shows how to copy in both directions:
Allows changes to the graphical user interface or the command line in batch or the transfer of EXIF to file specification per file (and vice versa, if desired, without further file changes).
Source: Free of www.irfanview.com
This is A LOT OF In practice easier and faster than described in the following instructions. e.g.
To convert the date / time of a single file to EXIF values is required
Shift-J, Alt-F, Enter.
See why the 1st time takes longer.
To learn this complex for a batch of SOUNDS files –
It requires: T, Ctrl-A, Alt-F, J, Enter, (Alt-F), Enter
(Or: T, Ctrl-A, Shift-J, Enter) (gives fewer options)
BUT in fact, after a little use, it's almost completely intuitive – menus guide you until the brain path forms.
GUI, per file
Options, JPG lossless rotation (Shift-J) Select "Apply original EXIF date/time to new file" Consider also selecting other options
GUI, one or more files (via thumbnail view)
WARNING: (Added 2020!)
It has been pointed out that choosing the wrong options can lead to undesirable results. B. if all target files are set to a specific date and time. Getting it right isn't too difficult – but look at the different check boxes and decide which one suits your needs.
Open Thumbnails view ('File, Thumbnails' or 'T' from Window view Select images to change EXIF data of usually all in folder -> Ctrl-A Then: File, 'JPG lossless operations' (1) Change EXIF date/time "Change EXIF date/time" Options are offered to set Date/time to specific setting or to move all times back/forwards by selected DHMS amount calculator provided to check result is as desired. (2) Transfer EXIF date / time to file saved date time "Lossless rotation with selected files" (Shift-J) then, as for single file version above Select "Apply original EXIF date/time to new file"
From the command line – This is a "rotate" without action, except for copying the date / time from EXIF to the file date and time. On request, the opposite can also be achieved. :
i_view32.exe file_spec *. jpg / jpg_rotate = (0,0,0,1,0,0,0,0)
Copy the date and time in the opposite direction ((file specification for EXIF)
Use as above with (0,0,1,0,0,0,0,0)
will do almost anything you can imagine with JPEG files
Source: Free of http://www.sentex.net/~mwandel/jhead/
I am using a batch file like below. Other options are possible:
They say: things jhead can change in an exif JPEG file
- Up-right images according to the rotation day with jpegtran
Set internal Exif timestamps or adjust them relatively
Correct date / time shifts in large batches of images
Rename the files or the date stamp according to the exif time stamp
Transfer Exif headers between images
Replace the thumbnails in the Exif headers
Edit JPEG comments (but not Exif comments)
Delete Exif or comment sections from JPEG images
Create a new minimal Exif header with date and thumbnail
Note: August 2016: "Anonymous user" correctly suggested that a proposed conversion did not work as I said. I have expanded the affected area extensively.