로컬 자산의 JSON 파일을 구문 분석하는 것은 특히 작업할 때 Android 프로그래밍에서 일반적인 작업입니다. 정적 데이터로. 이를 효과적으로 달성하는 방법은 다음과 같습니다.
1. JSON 파일 읽기:
public String loadJSONFromAsset() { String json = null; try { InputStream is = getActivity().getAssets().open("formules.json"); int size = is.available(); byte[] buffer = new byte[size]; is.read(buffer); is.close(); json = new String(buffer, "UTF-8"); } catch (IOException ex) { ex.printStackTrace(); return null; } return json; }
이 메서드는 자산 폴더에서 "formules.json" 파일을 열고 해당 내용을 버퍼로 읽어온 후 결과 JSON 문자열을 반환합니다.
2. JSON 문자열 구문 분석:
try { JSONObject obj = new JSONObject(loadJSONFromAsset()); JSONArray m_jArry = obj.getJSONArray("formules"); ArrayList<HashMap<String, String>> formList = new ArrayList<>(); HashMap<String, String> m_li; for (int i = 0; i < m_jArry.length(); i++) { JSONObject jo_inside = m_jArry.getJSONObject(i); String formula_value = jo_inside.getString("formule"); String url_value = jo_inside.getString("url"); //Add values to the ArrayList as follows: m_li = new HashMap<>(); m_li.put("formule", formula_value); m_li.put("url", url_value); formList.add(m_li); } } catch (JSONException e) { e.printStackTrace(); }
여기에서는 JSON 문자열을 JSONObject로 구문 분석합니다. 그런 다음 "formules" 배열을 반복하고 "formule" 및 "url" 값을 추출합니다. 이 값을 HashMap에 저장하고 이를 ArrayList에 추가합니다.
3. ListView에 데이터 표시:
ArrayList에 데이터가 있으면 ArrayAdapter를 사용하여 이를 ListView에 표시할 수 있습니다. 적절한 컨텍스트와 레이아웃으로 ArrayAdapter를 생성하고 이를 ListView로 설정합니다.
위 내용은 자산의 로컬 JSON 파일을 Android의 ListView로 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!