안녕하세요. 현재 제가 막고있는 프로젝트에서
웹 서버에 있는 txt 파일이 현재 제이슨 방식으로 배열되어 있는데요
웹서버로 부터 url 을 통해 HttpURLConnection 방식으로
bufferedReader 로 txt 파일을 StringBuilder 로 가져오는데요
어떠한 값에의해서 조건에 맞는게 있다면
2개의 txt 파일을 불러와 그 파일의 json 방식의 string을 병합해서
하나의 jsonarray로 만들려고 합니다.
그래서 빌드해온 값을 다시 string 변수에 넣어 주어서
값을 가져 오면 [ ..... ][......]
되어 있는데요. 이것을 하나의 배열로 잡기 위해서
jsonStrRe = jsonStr.replace("[", "").replace("]", ","); 이런식으로 replasce를 해서
int val1 = 0;
String jsonText="";
val1 = jsonStrRe.toString().length();
jsonText = jsonStrRe.toString().substring(0, val1 - 1);
jsonStr = "\'[" + jsonText + "\']";
이렇게 해주었습니다.
그래서 jsonStr 를 로그로 뿌렸더니
배열 형식으로 잘 나오고 다 잘되는가 싶더니
of type java.lang.String cannot be converted to JSONArray
이런 오류가 나네요...
로그에 담겨져 있는건 맨 마지막 값에 ] 대괄호 닫는게 제대로 보이는데
제이슨 에러에서는 뒤에 ] 괄호가 빠져서 나오네요..
jsonStr = "\'[" + jsonText + "\']"; 이 구문을
jsonStr = "[" + jsonText + "]";
이렇게 하면
org.json.JSONException: Unterminated array at character 3 of
이렇게 에러가 나구요...
웹으로 부터 빌드해온 값을 안드로이드에서 스트링을 리플레이스를 해서
다시 대괄호를 붙여서 json 방식으로인식하게 하려면
먼가 규칙이라거나 규약이 있는건가요 ??
구글링을 해도 비슷한 경우는 나오지만 ... 어떻게 하면 좋을가요 ?? 지금 4일째 이거 하나 때문에...
이것만 되면 끝인데... 고수님도 도움 부탁드려요...
궁금하신 소스와 관련되서는 요청하시는 분들께 오픈해드립니다.
그럼 답변 부탁드립니다 ㅠㅠ