本帖最后由 aloha20200628 于 2024-7-24 22:47 编辑
回复 1# jzmaker
给两个不用下载第三方工具的批处版本
代码存为test.bat,置于图片文件 *.jpg 所在的目录中运行即可,运行后生成 "结果.txt" 文件,其中自动排除未包含 ‘拍摄时间’ 属性数据的图片文件...- @set @x=1 /* &echo off
- (for %%F in (*.jpg) do for /f "delims=" %%v in (
- 'cscript /nologo /e:jscript "%~f0" "%%~fF" ') do set/p="%%~nxF - %%v"<nul&echo,)>"结果.txt"
- pause&exit/b */
- v=WSH.arguments, img=WSH.createObject('WIA.imageFile'), img.loadFile(v(0));
- if (img.properties.count>0 && img.properties.exists('306')) {WSH.echo(img.properties.item('306').value);}
复制代码 如果被处理的图片文件较多,可改用以下可明显提速的版本...- @set @x=1 // &(dir /b/a-d *.jpg|cscript /nologo /e:jscript "%~f0") &pause&exit/b
- img=WSH.createObject('WIA.imageFile'), ws=WSH.stdin, lines='';
- while (!ws.atendofstream) {
- pF=ws.readline(); img.loadFile(pF);
- if (img.properties.count>0 && img.properties.exists('306'))
- lines+=pF+' - '+img.properties.item('306').value+'\n';
- }
- if (lines=='') WSH.quit();
- fso=WSH.createObject('Scripting.FileSystemObject');
- fp=fso.OpenTextFile('结果.txt',2,true), fp.write(lines.slice(0,-1)), fp.close(), WSH.quit();
复制代码
|