How to get the location (byte location) in the file from the Java scanner?
•
Java
How to get the location (byte location) in the file from the Java scanner?
Scanner scanner = new Scanner(new File("file")); scanner.useDelimiter("abc"); scanner.hasNext(); String result = scanner.next();
Now: how to get the position of the result in the file (in bytes)?
Use scanner match(). Start () is not the answer because it gives the location in the internal buffer
Solution
Its possibe uses RandomAccessFile Try this
import java.io.FileNotFoundException; import java.io.IOException; import java.io.RandomAccessFile; public class RandomFileAccessExample { RandomFileAccessExample() throws IOException { RandomAccessFile file = new RandomAccessFile("someTxtFile.txt","r"); System.out.println(file.getFilePointer()); file.readLine(); System.out.println(file.getFilePointer()); } public static void main(String[] args) throws IOException { new RandomFileAccessExample(); } }
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码