Processing the contents of the entire file, Read the entire file
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.SeekableByteChannel;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class Test {
public static void main(String[] args) throws IOException {
Path path = Paths.get("/users.txt");
try (SeekableByteChannel sbc = Files.newByteChannel(path)) {
ByteBuffer buffer = ByteBuffer.allocate(1024);
sbc.position(4);
sbc.read(buffer);
for (int i = 0; i < 5; i++) {
System.out.print((char) buffer.get(i));
}
buffer.clear();
sbc.position(0);
sbc.read(buffer);
for (int i = 0; i < 4; i++) {
System.out.print((char) buffer.get(i));
}
sbc.position(0);
buffer = ByteBuffer.allocate(1024);
String encoding = System.getProperty("file.encoding");
int numberOfBytesRead = sbc.read(buffer);
System.out.println("Number of bytes read: " + numberOfBytesRead);
while (numberOfBytesRead > 0) {
buffer.rewind();
System.out.print("[" + Charset.forName(encoding).decode(buffer) + "]");
buffer.flip();
numberOfBytesRead = sbc.read(buffer);
System.out.println("\nNumber of bytes read: " + numberOfBytesRead);
}
}
}
}
Related examples in the same category