0

私は基本的にファイル(mp3ファイルなど)を読みたいと思っています。ファイルで使用されているすべての ASCII 文字をスキャンし、それらを辞書、配列、またはリストに入れます。そして、そこから各文字に数値を割り当てます。

例えば:

ファイル blabla.mp3 を読み込むとします (明らかに、このタイプのファイルはエンコードされているため、単なる英字ではありません)。

これはその内容です:

╤dìúúH»╓╒:φººMQ╤╤╤╤┤i↔↔←GGGΦ⌠i←E::2E┤tti←╙╤ΦΦ⌠·:::::%Fæ╤╤:6Å⌠tSN│èëåD¿╢ÄÄÄÄÄÄÄÄÄÄÅO ^↔:::.ÄÄÄÄÄÄÄèHΦΦ■ï»ó⌐╙-↔→E┤tttttttt}▲î╤╤dì"Ü:::)ú$tm‼ º╤╓q╤╙·:.ñǰ"V├╡ ΦPa↨/úúúúúúúΦ╞îHΦ║*ÄèúóΦΦΦΦ»DΦΦ·tΘ○_Nïúkî►"DëÜ)#ú»→·:4Äïúúúúó¿║:( ·:ç↑PR"$RGH◄◘úúó¿ΦΦΦ┌&HΦΦ┌+⌠ WºGG ╤m→GF╘±"¿ΦñïúúúóΦò↨FæTtt╓ìú⌠ΦΦΦ⌠z:::=:::::≥E╤╤╤╤╤╤╤Tm↔↔▬Hªèi⌠ztz:::tt

どの文字が使用されているかを把握し、それぞれに 0 ~ 255 の値を割り当てたいと考えています。各値はその文字に固有のものになります。

したがって、╤ = 0; Φ=56; ú = 25 などなど

今、私はpythonとjavaのドキュメントを検索してきましたが、何を探しているのかよくわかりません。また、ASCII 文字、HEX、またはファイルの生のバイトについて心配する必要があるかどうかもわかりません。

正しい方向に向けてくれる人が必要なだけです。何か助けはありますか?

4

3 に答える 3

1

各バイト 0 から 255 までの数値です。これらの数値を含む配列は、正確には、ファイルの内容を含む配列です。この配列(または辞書など)で何をしたいのかはまったくわかりませんが、作成するのは簡単です。

于 2012-05-25T03:16:01.577 に答える
0

既に読み込んだ各バイトは、0 から 255 までの値 (つまり、1 バイト) です。それしか使えない理由あるの?

于 2012-05-25T03:17:28.050 に答える
0

あなたが何を達成しようとしているのか正確にはわかりません。長さ 256の配列を作成できます。char各エントリには、そのインデックスに関連付ける文字が格納されます。逆に行きたい場合は、 をお勧めしHashMap<Character, Integer>ます。新しい各文字を次のように処理できます。

Map<Character, Integer> map = new HashMap<Character, Integer>();
for (each character c in the file) {
    Integer code = map.get(c);
    if (code == null) {
        // new character
        code = map.size();
        map.put(c, code); // assign next number
    }
    // use code as the encoding for c
}
于 2012-05-25T03:23:13.187 に答える