2011-11-24 2 views
1

InputStreamReader이 "\"사라진 결과를 읽을 때 "\ n"을 반환하는 JSON 서비스가 있습니다. 문자열에 "n"을 남겨 둡니다.InputStreamReader가 ""결과를 읽을 때 결과를 반환하는 JSON Service가 있습니다.

"\ n"을 TextArea에 표시 할 다음 줄로 변환하는 데 문제가 있습니다. 예를 들어

:

Service Result: Hello\nWorld 
PassThrough InputStreamReader: HellonWorld 
TextArea Output: HellonWorld 

나는 그것을 할 필요가 :

Service Result: Hello\nWorld 
PassThrough InputStreamReader: Hello 
World 
TextArea Output: Hello 
World 

이 문제를 야기하는 방법에 대한 제발 도와주세요.

저는 LWUIT를 사용 중이며 J2ME 장치 용으로 개발 중입니다.

답변

1

이이 작업을 수행하는 가장 좋은 방법은 아니지만 여기있다 :

이미 문제를 해결

c = (char) i.read(); 
if (c == 'u') { 
    String unicode = "" + ((char) i.read()) + ((char) i.read()) + ((char) i.read()) + ((char) i.read()); 
    try { 
     c = (char) Integer.parseInt(unicode, 16); 
    } catch (NumberFormatException err) { 
     // problem in parsing the u notation! 
     err.printStackTrace(); 
     System.out.println("Error in parsing \\u" + unicode); 
    } 
} 
0

정확한 JSON 문자열을 붙여 넣을 수 있습니까? 데이터가 큰 따옴표 인 경우 "이면 \u 표기법을 디코딩하는 경우를 제외하고는 전혀 수정하지 말아야합니다.

+0

아래 JSONParser.java

else if (c == 'n') { c = '\n'; } 

에 다음 줄을 추가합니다. 네, 그렇 겠지만, 접근하고있는 서비스에서 처리해야합니다. 어쨌든 대단히 감사합니다! 어쨌든 다음과 같은 내용입니다. "description": "Lorem ipsum dolor sitting amet, \ n consectetur adipiscing elit." – bernardnapoleon

관련 문제