Also ich versuche, eine Methode zu implementieren, die ein ByteArray in eine Datei einfügt und ein neues ByteArray mit dem ByteArray, das eingefügt wurde, wenn das Sinn macht. Das Folgende ist mein Code, aber ich bin mir ziemlich sicher, dass etwas nicht stimmt, da meine Tests fehlschlagen, würde jede Hilfe geschätzt werden.Wie schreibe ich ein ByteArray in eine Datei?
public void writeBlock(int blockNum, AbstractDBFile f, AbstractBlock b)
throws IOException {
f.setCurBlockPos(blockNum);
byte[] writeData = new byte[4096];
int currentByte = f.getCurBlockPos() * 4096;
File ourFile = new File(f.getFileName());
// Block block = new Block();
Path path = Paths.get(f.getFileName());
Files.write(path, writeData, StandardOpenOption.WRITE); //Data is Written
RandomAccessFile file = new RandomAccessFile(ourFile, "rw");
FileChannel inChannel = file.getChannel();
ByteBuffer bb = ByteBuffer.allocate(currentByte);
inChannel.write(bb);
while(inChannel.read(bb)>0){
bb.flip();
for (int i =0; i<bb.limit(); i++){
writeData[i]=bb.get();
b.setData(writeData);
}
bb.clear();
}
inChannel.close();
file.close();
}