utf-8 - Java は FileWriter を使用して int 型データをファイルに書き込みますが、ファイル データが間違っていますか?
phpcn_u1582
phpcn_u1582 2017-05-17 09:58:09
0
1
619

(タイトルが非常に曖昧であることは承知しています。どう説明してよいか本当にわからないからです)

この問題の原因は、Android APP が Java で開発されており、その機能の 1 つとして FileWriter を使用して int データをデータ ファイルに書き込むことです。このデータ ファイルは File の createNewFile(String filename) メソッドを使用して作成され、ファイルに書き込まれるデータはすべて int 型です。 (FileWriter の write(int) メソッド)

後続の処理の便宜上、データ ファイル内の各データ セグメントは 4 (int)-1 で分割されます (各データ セグメントの前に書き込まれます)。論理的に言えば、このファイルの最初の 16 バイトは ff である必要があります。ただし、実際のデータ ファイルは次のようになります:

UTF8 エンコード エラーなどのよくある問題が発生していますが、int が write を使用して書き込まれ、ファイルに String が書き込まれていない場合にエンコード エラーが発生する理由がよくわかりません。

そこで皆さんにお聞きしたいのですが、この状況 (純粋な int データ ファイル) ではどうすればよいでしょうか?他にデータを読み取る方法はありますか?

###前もって感謝します!

phpcn_u1582
phpcn_u1582

全員に返信(1)
仅有的幸福

FileWrite の Write(int) メソッドは、ここでの int が実際には char 文字であるため、純粋な int ファイルを書き込むことができません。int データが Unicode コード テーブル内で対応する char 値を見つけることができない場合、文字化けが発生します。 toString メソッドを提供して文字列に変換できます
実際の int データを書き込みたい場合

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート