Java : WritableByteChannel con ejemplos
WritableByteChannel (Java SE 23 & JDK 23) en Java con ejemplos.
Encontrará muestras de código para la mayoría de los métodos WritableByteChannel.
Nota :
- Este artículo puede utilizar software de traducción para su comodidad. Consulte también la versión original en inglés.
Summary
Un canal que puede escribir bytes. (Traducción automática)
final var path = Path.of("R:", "java-work", "test.data");
System.out.println(path); // R:\java-work\test.data
try (final WritableByteChannel channel = Files.newByteChannel(path,
StandardOpenOption.CREATE, StandardOpenOption.WRITE)) {
final byte[] bytes = {10, 20, 30, 40, 50};
final var src = ByteBuffer.wrap(bytes);
src.limit(3);
System.out.println(src); // java.nio.HeapByteBuffer[pos=0 lim=3 cap=5]
if (src.hasArray()) {
System.out.println(Arrays.toString(src.array())); // [10, 20, 30, 40, 50]
}
final var ret = channel.write(src);
System.out.println(ret); // 3
System.out.println(src); // java.nio.HeapByteBuffer[pos=3 lim=3 cap=5]
if (src.hasArray()) {
System.out.println(Arrays.toString(src.array())); // [10, 20, 30, 40, 50]
}
}
final var bytes = Files.readAllBytes(path);
System.out.println(Arrays.toString(bytes)); // [10, 20, 30]
Methods
int write (ByteBuffer src)
Escribe una secuencia de bytes en este canal desde el búfer indicado. (Traducción automática)
final var path = Path.of("R:", "java-work", "test.data");
System.out.println(path); // R:\java-work\test.data
try (final WritableByteChannel channel = Files.newByteChannel(path,
StandardOpenOption.CREATE, StandardOpenOption.WRITE)) {
final byte[] bytes = {10, 20, 30, 40, 50};
final var src = ByteBuffer.wrap(bytes);
src.limit(3);
System.out.println(src); // java.nio.HeapByteBuffer[pos=0 lim=3 cap=5]
if (src.hasArray()) {
System.out.println(Arrays.toString(src.array())); // [10, 20, 30, 40, 50]
}
final var ret = channel.write(src);
System.out.println(ret); // 3
System.out.println(src); // java.nio.HeapByteBuffer[pos=3 lim=3 cap=5]
if (src.hasArray()) {
System.out.println(Arrays.toString(src.array())); // [10, 20, 30, 40, 50]
}
}
final var bytes = Files.readAllBytes(path);
System.out.println(Arrays.toString(bytes)); // [10, 20, 30]
Methods declared in Channel
Related posts
- Ejemplos de API