有时候dat文件里的内容长短不一样,下方的代码提取出的字符串就位置不对
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class OpenTextLine {
public static void main(String[] args) throws IOException {
long timeStart = System.currentTimeMillis();
File file = new File("D:\\3.dat");//文件路径
FileReader fileReader = new FileReader(file);
LineNumberReader reader = new LineNumberReader(fileReader);
int number = 1;//设置指定行数
String data = "";
int lines = 0;
while (data != null) {
lines++;
data = reader.readLine();
if (lines == number) {
String line =data;
String out1 = line.substring(45,58);
String out2 = line.substring(132,133);
System.out.println(out1);
System.out.println(out2);
System.exit(0);
}
}
reader.close();
fileReader.close();
}
}
下方是dat文件
9LB6837N20073|100-000000862-01|5315579220005|0900038337298|5315579|5315579|0900038|001|03/08/2022 08:02:31|2DSRT10MCS|202671|5SUZ|T|5|SPL
9LB6837N20008|100-000000862-01|5315579220005|0900038337298|5315579|5315579|0900038|001|03/08/2022 08:02:31|2DSRT10MCS|202671|5SUZ|T|5|SPL
9LB6837N20104|100-000000862-01|5315579220005|0900038337298|5315579|5315579|0900038|001|03/08/2022 08:02:31|2DSRT10MCS|202671|5SUZ|T|5|SPL
9LB6837N20065|100-000000862-01|5315579220005|0900038337298|5315579|5315579|0900038|001|03/08/2022 08:02:31|2DSRT10MCS|202671|5SUZ|T|5|SPL
9LB6837N20059|100-000000862-01|5315579220005|0900038337298|5315579|5315579|0900038|001|03/08/2022 08:02:31|2DSRT10MCS|202671|5SUZ|T|5|SPL