[英]Determine Line Number from Byte Offset in a text file
我目前有一種情況,我知道一個文本文件的字節偏移量。 我想知道是否可以從字節偏移量確定行號。 文本文件中的記錄不是固定長度的,在這種情況下,我會將偏移量除以寬度。
除非所有行都是一致的長度,否則無法從字節偏移確定行號。 但是,您可以掃描換行符並跟蹤它們以計算文件中的偏移量。
你可以做類似的事情;
String fullTextFile = loadTextFile();
String section = fullTextFile.substring(0, byteOffset);
String reduced = section.replaceAll("[^\n]*","");
int lineNumber = reduced.length();
我不完全確定該正則表達式的合法性,但是不需要太多調整。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.