2012-10-18 4 views
0

의 파일을 삭제하면 문제가 발생합니다. org.Json lib의 JSONObject에는 equals 메소드가 없습니다. 하지만 그것은 toString 메서드를 가지고 있습니다. 나는 "abc". equals (JsonObject.toStirng())를 원한다. 여기에 문제가있다.Java Asm lib를 사용하여 클래스

toStirng() 문자열이 정렬되지 않았습니다. 예 : {"aa":"11","bb":"22"}의 경우, toStirng은 다음과 같습니다.

{"bb":"22","aa":"11"} 문자열은 같지 않지만 json 객체는 실제로 동일합니다. 내가 클래스를 수정하는 asm.lib를 사용하려면, 내가 소스 코드가없는

private Map map; 

public JSONObject() 
    { 
     map = new HashMap(); 
    } 

: 나는

org.json.JSONObject을 decomplie.

그래서, 내가 한 장소를 변경하려면, 하나는 다음과 같습니다

그래서, toString에서 생성 된 문자열() 정렬됩니다, 그게 내가 원하는 것입니다
public JSONObject() 
    { 
     map = new HashMap(); -->map = new LinkedHashMap(); 
    } 

.

나는 필드를 추가하는 방법을 알고,하지만 난 방법을 수정 알고는 출원 또는

방법을 삭제하지 마십시오.

형제 또는 자매의 시간이,

답변

0

json.org 자바 소스 :-) 감사가 있습니다 : https://github.com/douglascrockford/JSON-java. 오픈 소스이지만 라이센스가 지정되지 않았습니다.

그런 다음 소스 코드를 수정할 수 있습니다.

+0

나는 단지 클래스를 수정하기 위해 ASM을 사용하고자하는데, 이것은 다른 질문이다. :-) –

관련 문제