So verwenden Sie java.nio.channels.filechannel, um ein Byte [] in eine Datei zu schreiben - GrundlagenJava

Java-Forum
Anonymous
 So verwenden Sie java.nio.channels.filechannel, um ein Byte [] in eine Datei zu schreiben - Grundlagen

Post by Anonymous »

Ich habe keine Erfahrung mit Java -Kanälen. Ich möchte eine Byte -Array in eine Datei schreiben. Derzeit habe ich den folgenden Code: < /p>

Code: Select all

String outFileString = DEFAULT_DECODED_FILE; // Valid file pathname
FileSystem fs = FileSystems.getDefault();
Path fp = fs.getPath(outFileString);

FileChannel outChannel = FileChannel.open(fp, EnumSet.of(StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING, StandardOpenOption.WRITE));

// Please note: result.getRawBytes() returns a byte[]
ByteBuffer buffer = ByteBuffer.allocate(result.getRawBytes().length);
buffer.put(result.getRawBytes());

outChannel.write(buffer); // File successfully created/truncated, but no data
< /code>

Mit diesem Code wird die Ausgabedatei erstellt und abgeschnitten, wenn sie existiert.  Außerdem kann ich im Intellij -Debugger sehen, dass Puffer 
Daten enthält. Außerdem wird die Linie outhannel.write () erfolgreich aufgerufen, ohne eine Ausnahme zu werfen. Nachdem das Programm beendet ist, werden die Daten jedoch nicht in der Ausgabedatei angezeigt.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post