`
貌似掉线
  • 浏览: 260084 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java获取照片EXIF信息

 
阅读更多
目前最简单易用的EXIF信息处理的Java包是Drew Noakes写的metadata-extractor,你可以直接从http://www.drewnoakes.com/code/exif/ 下载该项目的最新版本包括其源码。
这里用的是2.6.4版本,代码如下:
/*
 * @(#)Main.java	       Project:Hello
 * Date-Time:2013-10-16 下午5:24:06
 *
 * Copyright (c) 2013 CFuture09, Institute of Software, 
 * Guangdong Ocean University, Zhanjiang, GuangDong, China.
 * All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import java.io.File;
import java.util.Iterator;

import com.drew.imaging.jpeg.JpegMetadataReader;
import com.drew.metadata.Directory;
import com.drew.metadata.Metadata;
import com.drew.metadata.Tag;

public class Main {
	public static void main(String[] args) throws Exception {
		File jpegFile = new File("C:\\Users\\wzh\\Desktop\\QQ图片20131016170038.jpg");
		Metadata metadata = JpegMetadataReader.readMetadata(jpegFile);
		Iterable<Directory> a = metadata.getDirectories();
		for (Directory directory : a) {
			Iterator<Tag> tag = directory.getTags().iterator();
			while(tag.hasNext()) {
				System.out.println(tag.next());
			}
		}
	}
}


打印出来的信息如下:
[Jpeg] Compression Type - Baseline
[Jpeg] Data Precision - 8 bits
[Jpeg] Image Height - 706 pixels
[Jpeg] Image Width - 784 pixels
[Jpeg] Number of Components - 3
[Jpeg] Component 1 - Y component: Quantization table 0, Sampling factors 2 horiz/2 vert
[Jpeg] Component 2 - Cb component: Quantization table 1, Sampling factors 1 horiz/1 vert
[Jpeg] Component 3 - Cr component: Quantization table 1, Sampling factors 1 horiz/1 vert
[Jfif] Version - 1.1
[Jfif] Resolution Units - inch
[Jfif] X Resolution - 96 dots
[Jfif] Y Resolution - 96 dots
2
6
分享到:
评论

相关推荐

    java 获取相片exif信息

    在Java编程环境中,获取相片的EXIF信息并进行自动缩放是一项常见的任务,尤其是在处理图像数据时。EXIF(Exchangeable image file format)是一种元数据标准,它存储了数码照片的各种信息,如拍摄时间、相机型号、...

    java获取图片的EXIF信息

    总结,获取Java中图片的EXIF信息需要利用第三方库如Apache Commons Imaging,并结合反射机制处理不公开的API。这使得我们能够全面地访问和操作图像的元数据,从而实现更复杂和定制化的图像处理功能。在实际开发中,...

    java处理EXIF信息方法

    本篇文章将详细介绍如何使用Java来处理这些EXIF信息,特别是与GPS相关的部分。 首先,要处理EXIF信息,我们需要一个Java库,如Apache Commons Imaging(以前称为Sanselan)或metadata-extractor。这两个库都提供了...

    JAVA读取照片信息 exif

    通过以上步骤,你就能使用metadata-extractor库成功地从Java程序中读取照片的Exif信息了。这个强大的工具可以帮助开发者在处理图像时获取更多有价值的数据,无论是进行数据分析、图像编辑还是元数据管理,都能发挥...

    获取照片的Exif信息

    获取照片的Exif信息主要有以下几种方法: 1. 图像处理软件:很多图像编辑软件,如Adobe Photoshop、光影魔术手等,都提供了查看和编辑Exif信息的功能。用户可以直接打开照片,在软件的“属性”或“元数据”面板中...

    java读取图片exif信息

    本教程将重点讲解如何使用Java语言读取图片的EXIF信息,特别是拍摄时间和相机厂商。 首先,我们需要一个能够解析EXIF信息的库。Java社区中广泛使用的开源库是Apache Commons Imaging(以前称为Apache Sanselan),...

    Java读取照片地址、GPS信息、定位照片精确位置完整项目【附测试照片一张】.zip

    综上所述,这个项目涵盖了Java处理照片元数据的关键技术,通过学习和实践,开发者可以掌握如何在Java环境中读取和解析照片的Exif信息,实现照片的精确定位和分析。同时,提供的测试照片也是一个很好的实践素材,可以...

    获取图片Exif信息

    在Java中,可以使用`Apache Commons Imaging`库,而在JavaScript中,有`exif-js`库用于浏览器环境下的Exif信息读取。 除了编程方式,还有一些图形用户界面工具可以直接查看Exif信息,如Windows的"属性"对话框(选择...

    JAVA获取图片EXIF等综合信息并转化为JSON

    这篇博客文章“JAVA获取图片EXIF等综合信息并转化为JSON”提供了一个实用的方法来处理这一需求。EXIF信息通常存储在JPEG和TIFF格式的图像文件中,包含了丰富的设备信息和拍摄参数。 首先,我们需要引入一个能够读取...

    获取照片Exif信息所要用到的jar包

    总的来说,处理照片Exif信息对于开发涉及图像处理的应用非常关键,它可以用于照片分类、元数据分析、地理定位等多个场景。通过引入正确的jar包并利用其提供的API,我们可以轻松地读取和操作Exif数据,从而为我们的...

    读取照片的Exif信息

    在IT行业中,读取照片的Exif信息通常涉及到图像处理库或编程语言的相关API。下面我们将详细探讨如何操作: 1. **编程语言支持**:大部分主流编程语言如Python、Java、C#、JavaScript等都有相应的库或模块来处理Exif...

    Java读取图片EXIF信息的方法

    通过以上内容,我们可以了解到Java如何利用`metadata-extractor`库读取并处理图片的EXIF信息,这对于开发需要理解照片元数据的项目至关重要。这个过程不仅提供了关于照片的丰富信息,还可以帮助我们更好地理解和分析...

    读取数码照片EXIF信息源码

    以下将详细介绍读取数码照片EXIF信息的相关知识点,并基于提供的源码文件"Exif.pas"进行解析。 首先,我们要知道读取EXIF信息需要用到特定的库或API,例如Java中的ImageIO,Python中的PIL(Pillow),或者是C++中的...

    java提取照片经纬度代码

    在现代摄影中,许多数码相机和智能手机在拍摄照片时会记录下地理位置信息(即经纬度),这些信息被嵌入到图片的Exif数据中。Exif(Exchangeable Image File Format)是一种标准格式,用于指定图像文件中存储有关该...

    Java读取照片地址完整项目【附测试照片一张】.zip

    项目中的核心部分是`ReadPicExif`类,它实现了读取照片EXIF信息的功能。这个类通常会包含以下关键步骤: 1. **加载图片**:使用`ImageIO.read()`方法从文件中读取图像,返回一个`BufferedImage`对象。 2. **获取元...

    Java获取EXIF所需的jar包

    总的来说,要从Java程序中读取和操作图像文件的EXIF信息,我们需要metadata-extractor-2.6.2.jar和xmpcore.jar这两个库。通过它们,我们可以方便地访问和处理图像的元数据,从而实现如照片信息分析、编辑或基于元...

    Java修改图片元数据Exif信息

    本话题主要聚焦于如何使用Java来修改图片的元数据,特别是Exif信息。Exif(Exchangeable Image File Format)是专门为数码相机生成的图像文件设定的一种标准,包含了拍摄时间、相机型号、曝光参数等丰富的信息。 ...

    java 获取照片拍摄地点等基本信息

    1. 如果你的Java环境是Java 7或更高版本,也可以使用标准库来获取Exif信息: ```java import javax.imageio.*; import javax.imageio.metadata.IIOMetadata; import org.w3c.dom.NodeList; public class ...

    java读取metadata元信息

    使用`java.net.HttpURLConnection`或Apache HttpClient库可以获取这些信息。 7. **Java类的元数据** 反射API(`java.lang.reflect`包)允许在运行时检查类、接口、字段和方法的元数据。例如,`Class`对象提供了...

Global site tag (gtag.js) - Google Analytics