package com.banking.xc.utils.staticinfo; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.text.TextUtils; import android.view.View; import skytv_com.banking.enjoymovie.R; import skytv_com.banking.enjoymovie.MyApplication; import com.banking.xc.entity.AirlineInfoEntity; import com.banking.xc.entity.AirportInfoEntity; import com.banking.xc.entity.FlightRoute; import com.banking.xc.utils.Log; import com.banking.xc.utils.xml.flight.FlightAriportInfoResponseXmlParseHandler; import com.banking.xc.utils.xml.flight.FlightSearchXmlParseHandler; import com.banking.xc.utils.xml.frame.XmlParseListener; public class FlightAirPortUtil { private final static String TAG = "FlightAirPortUtil"; public static ArrayList<AirportInfoEntity> airPortList; public Map<String,String> airPortMap; public List<String> airPortNameList; /*public static ArrayList<AirlineInfoEntity> getAirlineList(){ return airlineList; }*/ public void initializeFlightAirport(){ //getFlightAirlineByHttp(); getAirportByFile(); //productCityMapByCode(); //productCityNameListByCode(); } public void getAirportByFile(){ InputStream is = null; try { is = MyApplication.getInstance().getResources().getAssets().open("airport.txt"); } catch (IOException e) { e.printStackTrace(); } if(Log.D){ Log.d(TAG,"getAirportByFile()-->InputStream null"+is.toString()); } final FlightAriportInfoResponseXmlParseHandler parseHandler = new FlightAriportInfoResponseXmlParseHandler(new XmlParseListener() { @Override public void onParseStart() { } @Override public void onParseError(String reason) { } @Override public void onParseSuccess(Object o) { airPortList = (ArrayList<AirportInfoEntity>)o; if(Log.D){ Log.d(TAG, "airPortList.size()"+airPortList.size()); Log.d(TAG, "airPortList.get(2)"+airPortList.get(2).getAirportName()); } } }, is); parseHandler.parse(); } public String getNameByThree(String three){ for(AirportInfoEntity entity : airPortList){ if(TextUtils.equals(entity.getAirport(),three)){ return entity.getAirportName(); } } return null; } public Map<String, String> getAirPortMap() { return airPortMap; } public List<String> getAirPortNameList() { return airPortNameList; } /** * 相对于枚举实现,asset中导入数据库,这种方法最优化. * 这个方法没必要,只需要根据城市汉字得到.可以记住热门的 */ public void productCityMapByCode(){ airPortMap = null; airPortMap = new HashMap<String, String>(); airPortMap.put("南苑机场","NAY"); airPortMap.put("首都国际机场","PEK"); airPortMap.put("浦东国际机场","PVG"); airPortMap.put("虹桥国际机场","SHA"); airPortMap.put("滨海国际机场","TSN"); airPortMap.put("江北国际机场","NAY"); airPortMap.put("太平国际机场","HRB"); airPortMap.put("周水子国际机场","DLC"); airPortMap.put("流亭国际机场","TAO"); airPortMap.put("咸阳国际机场","XIY"); airPortMap.put("敦煌机场","DNH"); airPortMap.put("禄口国际机场","NKJ"); airPortMap.put("无锡苏南硕放国际机场","WUX"); airPortMap.put("扬州泰州机场","YTY"); airPortMap.put("萧山国际机场","HGH"); airPortMap.put("普陀山机场","HSN"); airPortMap.put("屯溪机场","TXN"); airPortMap.put("庐山机场","JIU"); airPortMap.put("高崎国际机场","XMN"); airPortMap.put("武夷山机场","WUS"); airPortMap.put("荷花机场","DYG"); airPortMap.put("双流国际机场","CTU"); airPortMap.put("宝安国际机场","SZX"); airPortMap.put("三灶机场","ZUH"); airPortMap.put("新白云国际机场","CAN"); airPortMap.put("两江国际机场","KWL"); airPortMap.put("巫家坝国际机场","KMG"); airPortMap.put("西双版纳机场","JHG"); airPortMap.put("大理机场","DLU"); airPortMap.put("丽江机场","LJG"); airPortMap.put("双流国际机场","CTU"); } public void productCityNameListByCode(){ airPortNameList = null; airPortNameList = new ArrayList<String>(); airPortNameList.add("南苑机场"); airPortNameList.add("首都国际机场"); airPortNameList.add("浦东国际机场"); airPortNameList.add("虹桥国际机场"); airPortNameList.add("滨海国际机场"); airPortNameList.add("江北国际机场"); airPortNameList.add("滨海国际机场"); airPortNameList.add("滨海国际机场"); airPortNameList.add("滨海国际机场"); airPortNameList.add("滨海国际机场"); airPortNameList.add("滨海国际机场"); } }