read file from assets

前端 未结 18 2454
终归单人心
终归单人心 2020-11-21 22:47
public class Utils {
    public static List getMessages() {
        //File file = new File(\"file:///android_asset/helloworld.txt\");
        AssetMan         


        
18条回答
  •  一个人的身影
    2020-11-21 23:42

    cityfile.txt

       public void getCityStateFromLocal() {
            AssetManager am = getAssets();
            InputStream inputStream = null;
            try {
                inputStream = am.open("city_state.txt");
            } catch (IOException e) {
                e.printStackTrace();
            }
            ObjectMapper mapper = new ObjectMapper();
            Map map = new HashMap();
            try {
                map = mapper.readValue(getStringFromInputStream(inputStream), new TypeReference>() {
                });
            } catch (IOException e) {
                e.printStackTrace();
            }
            ConstantValues.arrayListStateName.clear();
            ConstantValues.arrayListCityByState.clear();
            if (map.size() > 0)
            {
                for (Map.Entry e : map.entrySet()) {
                    CityByState cityByState = new CityByState();
                    String key = e.getKey();
                    String[] value = e.getValue();
                    ArrayList s = new ArrayList(Arrays.asList(value));
                    ConstantValues.arrayListStateName.add(key);
                    s.add(0,"Select City");
                    cityByState.addValue(s);
                    ConstantValues.arrayListCityByState.add(cityByState);
                }
            }
            ConstantValues.arrayListStateName.add(0,"Select States");
        }
     // Convert InputStream to String
        public String getStringFromInputStream(InputStream is) {
            BufferedReader br = null;
            StringBuilder sb = new StringBuilder();
            String line;
            try {
                br = new BufferedReader(new InputStreamReader(is));
                while ((line = br.readLine()) != null) {
                    sb.append(line);
                }
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                if (br != null) {
                    try {
                        br.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }
    
            return sb + "";
    
        }
    

提交回复
热议问题