我正在尝试从 USB 读取 Mp3 文件并将数据写入不同的缓冲区。如果有任何好的方法可以做到这一点,请帮助我。
我可以将整个数据读入一个字节数组。但我想做一些事情,比如将前 8 个字节写入第一个字节数组,然后将下一个 8 个字节写入第二个字节数组,依此类推,直到数据结束。如果可能,请提供示例代码。如果我面前有任何例子,我可以很快掌握。
下面是我必须读取数据的代码。
public class ReadFileInByteArrayWithFileInputStream {
static byte[] buffer1 ;
@SuppressWarnings("null")
public static void main() {
File file = new File("/mnt/media/wayfaring_stranger.mp3");
FileInputStream fin = null;
FileOutputStream fout=null;
try
{
// create FileInputStream object
fin = new FileInputStream(file);
byte fileContent[] = new byte[(int) file.length()];
// Reads up to certain bytes of data from this input stream into an
// array of bytes.
fin.read(fileContent);
// create string from byte array
String s = new String(fileContent);
System.out.println("File content: " + s);
buffer1 = new byte[8];
}
catch (FileNotFoundException e)
{
System.out.println("File not found" + e);
}
catch (IOException ioe) {
System.out.println("Exception while reading file " + ioe);
}
finally {
// close the streams using close method
try
{
if (fin != null) {
fin.close();
}
}
catch (IOException ioe)
{
System.out.println("Error while closing stream: " + ioe);
}
}
}
}