2017-07-03 16 views
0

私は画像を送ることができるIMソフトウェアを開発しています。最近私は奇妙な問題を抱えていました。つまり、同じ画像(同じmd5チェックサムを持つ)がソフトウェアを送信するときにピックアップされ、ソフトウェアでは別のファイルサイズが読み込まれます。同一の画像ファイルが異なるコンピュータで異なるサイズを持っています

私のコンピュータでは、ソフトウェアは正しいサイズの7489バイトを読み込みましたが、私の顧客のコンピュータではサイズは8700バイトです。どちらのOSもWin7 Premiumバージョンで、ファイルサイズを取得するにはC statメソッドを使用します。

誰が何が起こっているのか分かりませんか?

+0

ファイル形式を取得できますか。サイズがKBかKbかどうか確認できますか?クライアントのマシンから自分のマシンにファイルを転送できますか? IMがクライアントに転送されている間にIMがイメージを圧縮または変更していないことを確かめていますか?どのようにイメージを転送している、詳細を与えることができます。 – viCky

+0

ファイル形式はPNGです。画像上でマウスを動かすと、両方のシステムが正しいサイズの7.31KBを出しました。私は転送コードを書いたので、ファイルは変更されないと確信しています。画像を取り上げてIMの添付ファイルボタンを押すと、ファイルのパスが取得され、次にファイルサイズがチェックされます。 –

答えて

0

コメントが長すぎますが、回答の質に達することを願っています。 :)

ファイルシステムのファイルシステムタイプとアロケーションユニットサイズも確認してください。同じファイルが異なるファイルシステム上で報告されたサイズが異なることは通常のことです。また、異なるソフトウェアによってサイズが異なって報告されます。有用なデータ量を報告するものと、ディスク上のファイルのサイズを報告するものがあります。それはどれくらいのスペースを消費するかを記述します。割り当て単位サイズの整数倍でなければなりません。私は7489バイトが実際の有用なデータのサイズであり、8700バイトがディスク上のサイズであると思います。アロケーションユニットのサイズは512バイトの倍数であったが、SSD上ではそれはもはやルールではないかもしれないので、少し珍しいが、だから私はあなたがそれについて心配するべきではないと思う。これは丸め誤差のようなもので、チェックサムが同じであればファイルは同じです。

Ps:エクスプローラの右クリック - >プロパティでは、ファイルの有効サイズとディスク上のサイズの両方が表示され、比較することができます。

関連する問題