jpgファイルが作成された日付を抽出したいと思います。 JavaにはFileオブジェクトのlastModifiedメソッドがありますが、ファイルから作成された日付の抽出をサポートしていないようです。 Windows XPでファイル上にマウスポインタを置いたときに表示される日付と同じ情報がファイル内に保存されていると思われます。DOSでファイルの "dir/TC"と共にJNIを使用して取得できるものとは異なります。javaで作成された日付画像の入手方法
答えて
日付は、JPEGのEXIFデータに格納されています。役に立つかもしれないjava libraryとviewer in javaがあります。
exifデータにアクセスするには、おそらく何かが必要です。 Googleはthis libraryを提案します。
私はこのメタデータライブラリを使用します。http://www.drewnoakes.com/code/exif/
は心に留めては、すべてのJPEG画像がこの情報を持っていないこと、それは100%のフールプルーフすることはできませんが、かなりうまく動作しているようです。
EXIFメタデータに作成された日付が含まれていない場合は、Runtime.exec(...)を使い、システム関数を使用して検索したい場合を除き、おそらくJavaのlastUpdatedを使用する必要があります(しかし、これはお勧めしません!)
ええ、それはいくつかのために働いていました私の画像は、私たちのデータベースに格納されている画像データでは機能しませんでした。 –
のように、このフォーマットを読み取ることができるそこにあり、いくつかのライブラリは、:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(final String[] args) {
try {
// get runtime environment and execute child process
Runtime systemShell = Runtime.getRuntime();
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter filename: ");
String fname=(String)br1.readLine();
Process output = systemShell.exec("cmd /c dir /a "+fname);
// open reader to get output from process
BufferedReader br = new BufferedReader (new InputStreamReader(output.getInputStream()));
String out="";
String line = null;
int step=1;
while((line = br.readLine()) != null)
{
if(step==6)
{
out=line;
}
step++;
} // display process output
try{
out=out.replaceAll(" ","");
System.out.println("CreationDate: "+out.substring(0,10));
System.out.println("CreationTime: "+out.substring(10,15));
}
catch(StringIndexOutOfBoundsException se)
{
System.out.println("File not found");
}
}
catch (IOException ioe){ System.err.println(ioe); }
catch (Throwable t) { t.printStackTrace();}
}
}
コードスニペットをありがとうございますが、実際に画像メタデータから日付を取得する必要があります、ファイルシステムからではありません。 – user16029
これはWindowsでも動作します – ScrappyDev
- 1. 画像付きラジオボタンの作成方法
- 2. アンドロイドのfirebase storageから画像の日付と時刻(作成されたデータ)を取得する方法は?
- 3. フィルタリングされた日付のドロップダウンを作成する方法
- 4. Caffe入力のためのグレー画像データの作成方法
- 5. Play!で自動生成された日付/タイムスタンプフィールドを作成する方法/ JPA?
- 6. ローカライズされたCFBundleDisplayNameの入手方法
- 7. 作成されたユーザーの作成方法、作成日、変更されたユーザー、テーブルの変更日
- 8. terraformを使用して作成されたELB、RDSのエンドポイントの入手方法
- 9. PHP - 新しく作成されたユーザーからの情報の入手方法
- 10. woocommerceで商品の特集画像を入手する方法
- 11. アンドロイドでレイアウトを作成する方法(添付画像参照)
- 12. 背景画像付きの固定ナビゲーションバーの作成方法は?
- 13. 2つの画像で画像を作成する方法
- 14. PDFizer:生成されたPDFドキュメントの画像を挿入する方法は?
- 15. symfonyクエリの作成方法>日付
- 16. swift iOS:作成した日付でギャラリーから画像を取得
- 17. Swiftに組み合わされた画像でGMSMarkerを作成する方法
- 18. アップロードされた画像をモデルに関連付ける方法
- 19. アニメーション画像のダウンロードリンクの作成方法
- 20. 入手できません。日付範囲用に印刷された行数
- 21. Javaでアルファ画像を作成する
- 22. Javaで画像ファイルを作成
- 23. Javaでサブ画像を作成する
- 24. レスポンシブ画像の作成方法
- 25. カスタムタイル画像の作成方法
- 26. R Markdown:挿入された画像の隣にリストを入れる方法
- 27. データベースに保存されたhtmlコンテンツのサムネイル画像を作成する方法
- 28. breezejsがサーバーの日付でレコードに作成されました
- 29. Javaバックエンドで動作するFirebaseの入手方法
- 30. pouchdbで手作業で作成されたインデックスにアクセスする方法find
素晴らしい!参考になったすべてのコメントありがとう!私はdrewnoakes.comで図書館を利用すると信じています。 – user16029
交換可能な画像ファイル形式(正式にExif、** JEIDA/JEITA/CIPAの仕様によるEXIF **は標準ではありません) –