티스토리 뷰
프로젝트 진행을 하면서 지나온 mappoints, 여러 좌표들을 DB 에 저장해야 되는 상황이 생겨 데이터들을 넣고 JSON 으로 binding 과 parsing 하는 기능을 구현하게 됬습니다.
소스코드
소스 코드는 아래와 같습니다.
binding의 경우 ArrayList 에 들어 있는 LatLng 객체의 lat과 lng 를 구해서 각각의 JSONObject에 넣어준뒤 이들을 JSONArray에 넣어주는 형식입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | public class JSONManager { public static String bindJSON(ArrayList<com.google.android.gms.maps.model.LatLng> list){ JSONArray jsonArray = new JSONArray(); for(int i = 0; i < list.size(); i++){ JSONObject latJson = new JSONObject(); JSONObject lngJson = new JSONObject(); try{ latJson.put("lat", list.get(i).latitude); lngJson.put("lng", list.get(i).longitude); }catch (JSONException e){ e.printStackTrace(); } jsonArray.put(latJson); jsonArray.put(lngJson); } return jsonArray.toString(); } public static ArrayList<com.google.android.gms.maps.model.LatLng> parseJSON(String data){ ArrayList<com.google.android.gms.maps.model.LatLng> list = new ArrayList<>(); try{ JSONArray jsonArray = new JSONArray(data); for(int i = 0; i < jsonArray.length(); i+=2){ JSONObject latObject = jsonArray.getJSONObject(i); JSONObject lngObject = jsonArray.getJSONObject(i + 1); com.google.android.gms.maps.model.LatLng latLng = new com.google.android.gms.maps.model.LatLng(Double.parseDouble(latObject.get("lat").toString()), Double.parseDouble(lngObject.get("lng").toString())); list.add(latLng); } }catch (JSONException e){ e.printStackTrace(); } return list; } } | cs |
반응형
'프로그래밍 > Android' 카테고리의 다른 글
Android 앱을 처음 실행했을 때 Check 하기 (0) | 2016.11.25 |
---|---|
Android Layout에 선 그리기 (Divider) (0) | 2016.11.17 |
Android FloatingAction Button 숨기기, 및 나타내기 (0) | 2016.11.04 |
Android 오디오 파일 재생 기능 구현 방법 (0) | 2016.11.03 |
(Android) 광학 문자 인식 라이브러리 Tesseract OCR(tess-two) 사용방법 (2) | 2016.11.01 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 일본 자전거 여행
- JavaFX Window Close
- 배낭 여행
- windows
- effective java
- 자전거
- 일본 여행
- 인텔리제이
- 일본 배낭여행
- 텐트
- JavaFX
- git
- JavaFX 테이블뷰
- intelij
- Java UI
- 자바
- java
- 자전거 여행
- 스프링부트
- JavaFX 종료
- springboot
- effectivejava
- 방통대 과제물
- 이펙티브자바
- 이펙티브 자바
- 일본여행
- 이펙티브
- 배낭여행
- TableView
- JavaFX Table View
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함