Ich fragte mich, ob es eine Möglichkeit gibt, einen Byte-Puffer am Ende einer Datei hinzuzufügen, indem Sie die Positions-Methode des Datei-Kanals verwenden.FileChannel - Bytepuffer bei eof anhängen?
habe ich gelesen, dass es notwendig ist, die Datei Ausgabestrom mit dem Ergänzungsflag
ByteBuffer byteBuffer = ...;
FileOutputStream fileOutputStream = new FileOutputStream("path/to/file", true);
FileChannel channel = fileOutputStream.getChannel();
channel.write(bytebuffer);
channel.force(true);
channel.close();
jedoch sollte es nicht möglich sein, zu öffnen, den Puffer durch , Modifikation der Position des Kanals, anzuhängen.
"The size of the file increases when bytes are written beyond its current size"
ByteBuffer byteBuffer = ...;
FileOutputStream fileOutputStream = new FileOutputStream("path/to/file");
FileChannel channel = fileOutputStream.getChannel();
channel.position(channel.size()).write(bytebuffer);
channel.force(true);
würde ich da die Datei für einige Erklärungen dankbar überschrieben wird.
Zeigen Sie den Code, der beweist, dass er nicht wie angegeben funktioniert. – Kayaman
Ist es ein Tippfehler, dass das anhängende Flag für * FileOutputStream * in Ihrem zweiten Codebeispiel nicht festgelegt ist? – Alexander