1

次のような toBinaryString 変換メソッドを使用しています。

for (i=0; i<anyLines.length; i++) {

            if (anyLines[i].startsWith("@")) {
                anyLines[i] = anyLines[i].replace("@","");
                anyLines[i] = Integer.toBinaryString((Integer.parseInt(anyLines[i])));
            }
            else {
                continue;
            }

しかし、ファイルに書き込むと、バイナリの長さは 2 ビットしかありませんが、すべてゼロの 16 ビット バイナリが必要です。たとえば、2 は 10 に変換されますが、0000000000000010 が必要です。どうすればよいですか?

4

2 に答える 2

6

2^17 とsubstring文字列全体を追加するだけです。

anyLines[i] = Integer.toBinaryString(131072 + (Integer.parseInt(anyLines[i]))).substring(1, 17);
于 2011-05-24T03:27:49.393 に答える
2

バイナリ文字列を設定したら、文字列の長さを確認し、文字列の前に十分なゼロを追加して 16 文字の長さにします。

于 2011-05-24T03:28:57.640 に答える