如何将原始数据划分为字节。
由于目前的音频包含32位( 2^32音调),它的范围从2^0 -2^32。
ex -> 6710497.(考虑小数点)
它是如何被分割成
67 104 97
FileInputStream是否有可以检查的方法
如果(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 1 9 84 73 84 0 0 0 67 104 97 114 108 105 101 32 80。。
编辑
这是对的吗
i/p ->文本'$4-‘
36 52 45 (小数点)
00100100 00110100 00101101 (ascii二进制)
i/p ->图像像素'0,255,100‘
00000000 11111111 1100100
i/p ->音频(32位,2^32音调) '1073741822‘
11111111111111111111111111111111111110(二进制形式)
00111111 11111111 11111111 11111110 (除以字节)单音
63 255 255 254
发布于 2020-01-17 14:56:34
fis.read()从输入流读取数据字节,并将其表示为int。假设您的文件有两个字节的二进制数据: 0100001101101000
第一次调用fis.read()将读取01000011 (小数为67 )
第二个调用fis.read()将读取01101000(小数为104个)。
所以这就是为什么你看到的输出是67 104 .
https://stackoverflow.com/questions/59789220
复制相似问题