2014-02-21 37 views
1

我想从文本文件中创建一个坐标列表,因此我创建了一个包含latitudelongitude双变量的类以及它们的getter和setter方法。在文本文件上使用setter/getters

所以在另一个类中,我使前一个类的对象使用setter方法。

CoordinatesParams params = new CoordinatesParams(); 

如何从文本文件中读取坐标列表,并将它们设置为latitudelongitude变量?

很抱歉,如果这个问题是很基本的一些

File Bus_Routes = new File("C:/Users/Daniel Dold/Desktop/Routes/Bus_Routes.txt"); 
Scanner scanner = new Scanner(Bus_Routes); 

String line = scanner.nextLine(); 
String[] parsed = line.split("\\s"); 
String routeText = parsed[0]; 

String dir = "C:/Users/Daniel Dold/Desktop/Routes/"; 
File routeFile = new File(dir, routeText); 
Scanner sc = new Scanner(routeFile); 
while(sc.hasNextLine()) 
{ 
    String line2 = sc.nextLine(); 
    String[] s = line2.split("\t"); 
} 

这是我迄今为止打印文件上的结果。

51.50177649 -0.05012445 
51.50210374 -0.05050666 
51.50253617 -0.0509908 
51.50265346 -0.05072191 
51.50274404 -0.05055025 
51.50301702 -0.05011841 

坐标文件仅有2列第一个是纬度和第二经度

+0

这取决于你的坐标是如何写入文件的。你也不能做一个谷歌搜索如何阅读文件? – diazazar

+0

我刚刚添加了我迄今为止所做的读取文件 – Dan

+0

请显示文件的一小部分以了解坐标如何存储在其中。 – kai

回答

1

我不知道文件的内部结构是如何,但你应该创造一个单供CoordinatesParamas,然后遍历数据您从文件中读取以填充CoordinatesParamas对象的列表,并通过setter设置此对象的经度和纬度。

List<CoordinatesParamas> lCoordinates = new ArrayList<CoordinatesParamas>(); 

while(sc.hasNextLine()) { 
    CoordinatesParamas temp = new CoordinatesParamas(); 
    String pair = sc.nextLine(); 
    String[] s = pair.split(" "); 
    temp.setLatitude(s[0]) 
    temp.setLongitude(s[1]) 
    lCoordinates.add(temp); 
} 

我改变string.split("\t")split(" ")因为它看起来像没有坐标,只有空格之间的标签。