原始数据如何划分为字节。

当前的音频包含32bit(2 ^ 32音频),范围为2 ^ 0-2 ^ 32。

ex-> 6710497 ..(考虑十进制)

怎么分成

67
104
97

FileInputStream是否有一种方法可以像

if(671> 256){发送67,下一个附录1}

try(FileInputStream fis=new FileInputStream("We_Dont_Talk_Anymore.mp3")) { //audio file

        int i;
        while((i=fis.read())!=-1)
            System.out.println(i);
} catch(Exception e) {
    System.out.println(e);
}

o / p-

73
68
51
3
0
0
0
0
1个
9
84
73
84
50
0
0
0
76
0
0
0
67
104
97
114
108
105
101
32
80




编辑

它是否正确

i / p->文本'$ 4-'

36 52 45(ASCII十进制)

00100100 00110100 00101101(ASCII二进制)

i / p->图像像素(rgb)'0,255,100'

00000000 11111111 1100100

i / p->音频(32位,2 ^ 32音调)'1073741822'

111111111111111111111111111110110(二进制形式)

00111111 11111111 11111111 11111110(分为字节)[一种音调]

63255255254

最佳答案

fis.read()从输入流中读取一个字节的数据并将其表示为int。因此,假设您的文件具有2个字节的二进制数据:0100001101101000

第一次调用fis.read()将读取01000011(十进制为67)

第二次调用fis.read()将读取01101000(十进制为104)。

这就是为什么您看到类似67 104的输出的原因...

10-04 23:26