1

誰かがJavaでJPEGファイルをロードする際に問題が発生したことがありますか?クライアントの1つが解決できないファイルを送信していますが、これらの同じファイルをWindowsで開くことができます。(私たちが受け取ったjpegファイルの他の99%は、問題なく処理されます)

私はこれらを読むためにいくつかのライブラリを試しました:

itextpdf : com.itextpdf.text.Jpeg (getInstance(imageData) - gives  "java.io.IOException: Premature EOF while reading JPG."
sanselan : org.apache.sanselan.ImageInfo ( Sanselan.getImageInfo(imageData) gives "java.io.IOException: Invalid Segment: insufficient data")
where imageData is a byte[]

ここでのエラーは、jpegが壊れていることを示唆していますが、これは、jpegがまだ表示されている理由を説明していません。

誰か提案があれば、私は最も感謝します

ありがとう

4

1 に答える 1

1

私が行った「解決策」は、タイプを識別する現在のプロセスを通じて受け取ったバイト配列を実行することです。これでタイプを識別できない場合は、バイト配列を取得して、強制的にJPEGに保存します。その後、これを再読み取りして、現在のプロセスにプッシュバックできます。

少しハッキーですが、数か月間は回避策にすぎません。

ここでみんなの助けをありがとう!

于 2012-08-14T08:13:31.067 に答える