2. 根据csv文件创建数据模型类CityList.java
时间: 2024-02-12 08:07:52 浏览: 108
js-city.rar_city_cityList._citylist.js
好的,根据您的要求,我来为您创建一个数据模型类CityList.java,并且这个类是根据CSV文件来创建的。
首先,我们需要导入以下的包:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
```
然后,我们定义CityList类:
```java
public class CityList {
private List<City> cities;
public CityList(String csvFile) {
cities = new ArrayList<>();
BufferedReader br = null;
String line = "";
String cvsSplitBy = ",";
try {
br = new BufferedReader(new FileReader(csvFile));
while ((line = br.readLine()) != null) {
String[] cityData = line.split(cvsSplitBy);
City city = new City(cityData[0], cityData[1], cityData[2]);
cities.add(city);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public List<City> getCities() {
return cities;
}
}
```
在这个类中,我们定义了一个List类型的变量cities,它包含了所有的城市信息。我们还定义了一个构造函数,这个构造函数需要传入一个csv文件的路径,然后根据csv文件中的数据,创建City对象,并将这些对象添加到cities列表中。getCities()方法用于获取cities列表。
最后,我们需要定义City类,City类用于表示城市信息:
```java
public class City {
private String name;
private String countryCode;
private String district;
public City(String name, String countryCode, String district) {
this.name = name;
this.countryCode = countryCode;
this.district = district;
}
public String getName() {
return name;
}
public String getCountryCode() {
return countryCode;
}
public String getDistrict() {
return district;
}
}
```
City类包含了三个属性:name、countryCode和district,它们分别表示城市的名称、国家代码和所属区域。我们还定义了一个构造函数,用于创建City对象,并定义了三个getter方法,用于获取City对象的属性值。
这就是根据CSV文件创建数据模型类CityList.java的实现。
阅读全文