プログラミング Java

【Java】画像ファイルをバイナリで比較する方法

投稿日:

 

画像ファイルの比較

比較元ファイル

素材はPhotoACから拝借しました。
コピー元画像:PCを持つ女性

コピーしたファイルとの比較(True)

コピー元ファイルをコピーしただけのファイル。
バイナリデータに差異が無いため、比較結果はTrueになる想定。

比較元ファイルをわずかに編集して比較(False)

コピー元ファイルをコピーした後、わずかに編集したもの。
顔の右側にある、小さな黒いドットが編集箇所。
編集したため、比較結果はFalseになる想定。

別ファイルとの比較(False)

全く別のファイルのため、比較結果はFalseになる想定。

存在しないファイルの場合(False)

存在しないファイル名を指定する。
IOExceptionでキャッチされる想定。

ソースコード

画像ファイルはデスクトップ上の「files」フォルダ内に格納。

 

実行結果

想定通り、コピーしたファイル以外はすべてFlaseになっています。
また、存在しないファイル名を指定した場合、IOExceptionがthrowされました。

 

参考

Qiita
ファイル内容が一致しているか判定する方法(Java)

PhotoAC
PCを持つ女性
PCを操作する女性

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

【SpringBoot入門】#13~ 独自のエラー画面の作成

概要 何らかのエラーが発生した場合に、エラー画面を表示して対応したいことがあります。 デフォルトのwhite label Error pageのままというわけにはいかないので、 独自のエラー画面を作成 …

Camtasia(カムタジア)でKrisp(クリスプ)を使う方法

Camtasiaで動画撮影する時のノイズ除去にKrispを導入する方法です。 前提 Krisp(無料版でOK)をインストール済みであること。 Pro版を試したい方は以下の招待URLからダウンロードして …

【Java入門】演算子の種類と使い方まとめ

概要 Javaで使う演算子(計算を行うための記号)について、種類と使い方をまとめました。 備忘録として使ってください。   演算子 代入演算子 値の代入や代入時に計算を行う演算子です。 [crayon …

【Java】オブジェクト指向の練習題材(成績オブジェクト)

前回記事、オブジェクト指向とは何なのかを簡単に説明してみるの練習題材です。 ここでは2つのオブジェクトを作成していきます。 成績オブジェクト:教科と点数などを保持 生徒オブジェクト:氏名と成績を保持 …

Laravelのヘルパー関数とは?

Laravel includes a variety of global “helper” PHP functions. Many of these functions are …

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。