Java 如何从特定行开始读取.txt文件?
我有一个以下格式的文本文件Java 如何从特定行开始读取.txt文件?,java,arrays,file-io,Java,Arrays,File Io,我有一个以下格式的文本文件 x y 3 8 mz int 200.1 3 200.3 4 200.5 5 200.7 2 等等。现在在这个文件中,我想将x和y值保存在两个不同的变量中,将mz和int值保存在两个不同的数组中。如何用Java读取这样的文件。格式是否固定?如果是,则可以跳过第一行,读取下一行,将其拆分并分配给两个变量 然后,您可以跳过下一行,拆分下一行中的每一行并分配给数组。import java.io.BufferedReader;
x y
3 8
mz int
200.1 3
200.3 4
200.5 5
200.7 2
等等。现在在这个文件中,我想将x和y值保存在两个不同的变量中,将mz和int值保存在两个不同的数组中。如何用Java读取这样的文件。格式是否固定?如果是,则可以跳过第一行,读取下一行,将其拆分并分配给两个变量 然后,您可以跳过下一行,拆分下一行中的每一行并分配给数组。
import java.io.BufferedReader;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;
public class Demo {
public static void main(String[] args){
BufferedReader reader = null;
String line = null;
List<String> list1 = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
try {
reader = new BufferedReader(new FileReader("c:\\file.txt"));
int i = 0;
while ((line = reader.readLine()) != null) {
i ++ ;
if(i > 3){
String temp1 = line.split(" ")[0];
String temp2 = line.split(" ")[1];
list1.add(temp1);
list2.add(temp2);
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if(reader != null) {
try {
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
System.out.println(list1);
System.out.println(list2);
}
}
导入java.io.FileReader;
导入java.util.ArrayList;
导入java.util.List;
公开课演示{
公共静态void main(字符串[]args){
BufferedReader reader=null;
字符串行=null;
List list1=新的ArrayList();
List list2=新的ArrayList();
试一试{
reader=新的BufferedReader(新的文件读取器(“c:\\file.txt”);
int i=0;
而((line=reader.readLine())!=null){
i++;
如果(i>3){
字符串temp1=line.split(“”[0];
字符串temp2=line.split(“”[1];
列表1.add(temp1);
列表2.add(temp2);
}
}
}捕获(例外e){
e、 printStackTrace();
}最后{
if(读卡器!=null){
试一试{
reader.close();
}捕获(例外e){
e、 printStackTrace();
}
}
}
System.out.println(列表1);
System.out.println(列表2);
}
}
顺便说一句:这是。是的。格式是固定的。