1

一番下のアップデートを読む

私はこれについて数時間頭を悩ませてきましたが、これを理解できないようです。

単体テストでは、ファイルを一時的な場所にコピーし、その上で soms シナリオを実行します。このファイルのコピーは非常に奇妙なことをします。これは PDF ファイルでのみ発生し、画像は影響を受けませんでした。ファイルサイズをコピー/収集するいくつかの異なる方法を試しましたが、すべて同じことを行います。

  • file.length() は、ウィンドウのリストと一致しません。Java は、ファイルが大きいと判断します (約 25% 多いバイト数)。
  • ファイル/バイトが読み取り/コピー/etcされると、JAVAが報告するバイト数になります。(多すぎる)
  • Intellij は、入力ファイルと出力ファイルの両方を同一として報告します。(intellij が差分に Java を使用している可能性があります)
  • 両方のファイル notepad++ を開くと、いくつかの違いがあります。すべてのテキストベースの情報 (pdf) は同一です。「ストリーム」タグでラップされたデータは異なります!

オリジナル:

xÚ¥'=OÃ@†÷ü</p>

新しいファイル:

xڥ�=O�@���

これにより、エンコードの問題などを疑うことができます...

しかし...

  • バイトごとのコピーでこれが発生するのはなぜですか?
  • 単純な file.length() を使用すると、なぜこれが発生するのですか?

誰かがこのようなものに出くわしたり、どの方向に検索すればよいか知っていますか?

リクエストに応じて: これはファイルをコピーするために使用されるコードです:

assetFile = TempFileUtil.createTempFile(transformationId + "_" + inputFile.getName()); FileUtils.copyFile(inputFile, assetFile);

createTempFile メソッドは次のとおりです。

public static File createTempFile(final String filename) { return new File(baseOutputPath, filename); }

アップデート

障害はコピーではなく、単体テストでのリソースの処理方法にあることがわかりました。/src/resources/ フォルダーの内容は、targer/test-classes/ フォルダーに移動/リンク/コピーされるため、単体テストなどでアクセスできます...そして、それが間違っているところです...私はまだ見つけようとしていますなぜこれが失敗するのか。

4

2 に答える 2

1

ほとんどの場合、正しくコピーしていません。たとえば、入力ストリームと出力ストリームを使用する必要がある場所でリーダーとライターを使用しています。

于 2013-09-23T09:35:16.967 に答える
0

Maven リソース プラグインの構成が不適切であることが判明しました。デフォルトでは、フィルタリングが true に設定されている場合、いくつかの基本的な画像タイプのみが「これらをフィルタリングしない」ように構成されています。このリストに PDF を追加すると、問題が解決しました。

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <nonFilteredFileExtensions> <nonFilteredFileExtension>pdf</nonFilteredFileExtension> <nonFilteredFileExtension>jpg</nonFilteredFileExtension> <nonFilteredFileExtension>jpeg</nonFilteredFileExtension> <nonFilteredFileExtension>gif</nonFilteredFileExtension> <nonFilteredFileExtension>png</nonFilteredFileExtension> <nonFilteredFileExtension>tif</nonFilteredFileExtension> <nonFilteredFileExtension>tiff</nonFilteredFileExtension> <nonFilteredFileExtension>bmp</nonFilteredFileExtension> </nonFilteredFileExtensions> </configuration> </plugin>

于 2013-09-23T10:53:53.310 に答える