`
弦上的福音
  • 浏览: 21820 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java比较图片是否相同(转)

    博客分类:
  • java
阅读更多
java比较图片是否相同

 //判断的办法是分别将两个文件读进来

//先判断着两个文件的长度,如果长度不一样,那肯定不一样

//如果两个文件的长度(大小)一样,那么就对文件中的每一个字节进行比对

//只要有一个字节不同,两个文件就不同。

//否则两个文件就是相同的

//代码如下:(JDK1.4+)(代码格式被吃掉了,请自己手工排一下)

package 兲髙亻壬鳥飛;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

public class Answer1 {

public static void main(String[] args) {

//文件名要用绝对路径

//相对路径也可以,但是容易弄错

String fileName1 = "xxx";

//写你需要判断的第一个文件的文件名

String fileName2 = "yyy";

//写你需要判断的第二个文件的文件名

FileInputStream fis1 = null;

FileInputStream fis2 = null;

try {

fis1 = new FileInputStream(fileName1);

fis2 = new FileInputStream(fileName2);

int len1 = fis1.available();

int len2 = fis2.available();

if (len1 == len2) {

//长度相同,则比较具体内容

//建立两个字节缓冲区

byte[] data1 = new byte[len1];

byte[] data2 = new byte[len2];

//分别将两个文件的内容读入缓冲区

fis1.read(data1);

fis2.read(data2);

//依次比较文件中的每一个字节

for (int i=0; i<len1; i++) {

//只要有一个字节不同,两个文件就不一样

if (data1[i] != data2[i]) {

System.out.println("文件内容不一样"); return; }

} System.out.println("两个文件完全相同");

} else {

//长度不一样,文件肯定不同

}

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} finally {

//关闭文件流,防止内存泄漏

if (fis1 != null) {

try {

fis1.close();

} catch (IOException e) {

//忽略

e.printStackTrace();

}

} if (fis2 != null) {

try {

fis2.close();

} catch (IOException e) {

//忽略

e.printStackTrace();

}

}

}

}

}


分享到:
评论

相关推荐

    java使用phantomjs把echarts转图片 静态资源

    本文将详细讲解如何在Java环境中使用PhantomJS将ECharts图表转化为图片。 首先,我们需要理解ECharts。ECharts是百度推出的一个基于JavaScript的数据可视化库,它提供了丰富的图表类型,如折线图、柱状图、饼图等,...

    Java将图片转换为byte数组例子总结

    ### Java将图片转换为byte数组及反向转换的知识点总结 #### 一、知识点概述 在Java编程中,经常需要处理图像数据,特别是在网络传输或存储时,将图像转换为`byte`数组是一种常见的做法。这不仅可以提高传输效率,...

    Java 图片压缩

    以下是一个简单的Java图片压缩示例: ```java import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; public class ImageCompressor { public ...

    java图片转视频

    在Java编程环境中,将图片序列转换为视频是一个常见的任务,特别是在多媒体处理或数据可视化领域。以下是一个关于如何使用Java实现这个功能的详细说明。 首先,我们需要一个库来处理视频编码,例如Xuggler或者...

    java图像识别(判断两个图是否相似)

    在Java中进行图像识别,尤其是判断两张图片是否相似,是一个涉及计算机视觉和图像处理的复杂任务。本话题将深入探讨如何使用Java实现这一功能。在实际应用中,图像相似度判断广泛应用于图像检索、内容识别、人脸识别...

    linux下java生成图片乱码问题.doc

    在Linux环境下,使用Java生成包含中文的图片时,经常遇到一个常见的问题——中文字符显示为乱码。这个问题的根源在于Linux系统默认的字体库中可能缺少支持中文的字体,因此在渲染中文字符时无法正确显示。针对这个...

    Java 保存HTML为图片

    - 考虑性能优化,如缓存生成的图片,避免频繁重复生成相同的图片。 6. **实战步骤** - 创建Struts2 Action类,定义接收HTML的字段和生成图片的方法。 - 实现HTML转图片的逻辑,包括解析HTML、渲染页面、添加背景...

    java图片转pdf格式

    在Java编程环境中,将本地图片转换为PDF格式是一项常见的任务,尤其在文档处理或报告生成时。这个过程涉及到了图像处理和PDF生成技术。本文将详细介绍如何使用Java实现这一功能,以及相关的技术知识点。 首先,我们...

    JAVA快速图片剪切

    在Java编程语言中,图片剪切是一项常见的任务,特别是在图像处理和图形用户界面的应用中。本文将深入探讨如何使用Java实现快速的图片剪切功能,以及相关的核心知识点。 首先,我们要明白图片剪切的基本概念。图片...

    Java Image转BufferedImage

    在Java编程语言中,图像处理是一项常见的任务,特别是在开发图形用户界面(GUI)或进行多媒体应用时。`Image`和`BufferedImage`是Java AWT(Abstract Window Toolkit)和Swing库中的两个重要类,它们分别用于处理...

    JAVA将PDF转OFD 国产化必备

    - **图片处理**:PDF中的图片可能需要进行格式转换或压缩,以适应OFD的要求。 - **安全性**:OFD支持数字签名和权限管理,如果需要,需要将这些信息一并转换。 - **兼容性测试**:转换后的OFD文件应确保在各种OFD...

    Java实现图片对比功能

    在Java中实现图片对比功能是一项涉及到图像处理的技术。这个功能的主要目的是在一张较大的图片(图A)中找出与另一张较小的图片(图B)完全匹配的区域。下面将详细介绍如何实现这一功能。 首先,我们需要对图片进行...

    将图片转成二进制并生成Base64编码字符串,再将二进制转换成各种图片

    这将返回一个`byte[]`,与最初读取图片时的字节数组相同。 4. **将字节数组转换回图片**: 有了解码后的字节数组,我们再次使用`ImageIO.write`方法,将这些字节写入一个新的`BufferedImage`对象,然后可以保存或...

    java图片加水印及图片加解密

    在Java编程领域,图片处理是一项常见的任务,包括添加水印和对图片进行加解密。以下将详细探讨这些知识点。 1. **图片加水印**: - **基本概念**:水印是一种在图片上添加不可见或可见的标记,用于证明所有权、...

    java生成水印图片

    在Java编程语言中,生成带有水印的图片是一项常见的任务,尤其在版权保护、品牌标识或者数据可视化等领域。本文将详细讲解如何利用Java实现这一功能,包括如何动态设置水印的文字大小、颜色以及水印的倾斜角度。 ...

    java实现excel转换成html

    本篇文章将详细探讨如何使用Java来实现Excel转HTML的功能。Java作为一种强大的编程语言,提供了多种库来处理这样的任务,其中一个常用的工具是Jacob库,它允许Java程序与Microsoft Office进行交互。 标题"java实现...

    JAVA根据图片搜索原理实现 项目附带图片非常完整适合学习

    关键技术:"感知哈希算法"(Perceptual hash algorithm),它的作用是对每张图片生成一个"指纹"(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。

    java代码保存宽高不变压缩图片(失真不大).docx

    在这个例子中,创建一个与原始图片相同大小的新`BufferedImage`对象,类型为`TYPE_INT_RGB`,即24位真彩色。 6. **绘制缩放后的图像**:`tag.getGraphics().drawImage()`将缩放后的图像绘制到新创建的`...

    使用java+OpenCV进行图片对比并标记差异部分

    总结起来,使用Java和OpenCV进行图片对比及差异标记涉及到图像读取、像素级比较、阈值处理、颜色标记等多个环节。通过理解这些基本概念和技术,你可以创建自己的图像比较工具,适用于各种场景,例如监控系统中的异常...

    java实现遍历文件夹内pdf分别转成一张jpg图片

    在Java编程环境中,将PDF文件转换为JPEG图片是一项常见的任务,尤其在数据处理或网页展示时。本项目提供了一个解决方案,通过遍历指定文件夹中的所有PDF文档,并将其转化为单张JPEG图片,同时保持原始PDF文件的命名...

Global site tag (gtag.js) - Google Analytics