2

私に提供されたテキスト ファイルがありますが、誰もそのエンコーディングを知りません。これをテキスト エディターで見ると、すべてがきれいに表示され、きれいな列に適切に配置されています。

ただし、データを読み取ると、いくつかの異常が見られます。視覚的には、フィールド「Foo」はテキスト ファイルの同じ列 (たとえば、列 15 ~ 20) に表示されますが、データを使用してそれを抽出しようとすると、substring(15,20)大きく異なります。11 から 16 バイト、18 から 23 バイト、15 から 20 バイトをプルすることもあります。レコード間に一貫性はありません。

私のテキスト エディタには表示されないが、メソッドによって読み取り可能な (インデックスにカウントされている) 特別なチャータクターがいくつかあると思われStringます。Java で特殊文字を表示してファイルの内容をダンプする方法はありますか?

Java を使用していない場合、誰かが私を助けることができるツールを推奨できますか?

4

2 に答える 2

1

まず、ファイルを直接確認します。どんなコードでも疑いの層を追加します。Total Commander(またはプラットフォーム上の同等のもの)を取得し、ファイル(F3)を表示して、16進モードに切り替えます。特殊文字の動作は行間でさえ一貫していないことを示唆しているので、アルゴリズムで修正する前に、フォーマットについて視覚的な手がかりを得る必要があります。

于 2012-07-24T13:08:59.607 に答える
1

ファイルの内容を個々の整数またはバイトとして出力しようとしましたか? これで隠しキャラの有無が分かります。

于 2012-07-24T12:25:46.413 に答える