>source

정수 값을 JSON에서 문자열로 구문 분석하는 데 문제가있어서 배열 목록에 추가 할 수 있습니다.

Integer.valueOf 를 사용해 보았습니다  하지만이 특정 문제의 형식과 Integer.valueOf 여부에 약간 붙어 있습니다.  실제로 작동하는지 여부입니다.

지금까지 작동 한 코드입니다

try {
    JSONArray jsonArray = new JSONArray(response);
    vehicleMakes = new String[jsonArray.length()];
    for (int i = 0; i < jsonArray.length(); i++) {
        String make = jsonArray.getJSONObject(i).get("make").toString();
        String model = jsonArray.getJSONObject(i).get("model").toString();
        String reg = jsonArray.getJSONObject(i).get("license_number").toString();
        // int year = jsonArray.getJSONObject(i).get("year").toString();
        Vehicle V = new Vehicle(make, model, reg);
        vehicleArrayList.add(V);
    }
}
catch (JSONException e) {
    e.printStackTrace();
}

이와 같이 정수 변수를 추가하려고합니다.

int year = jsonArray.getJSONObject(i).get("year").toString();

어떻게 추가 할 수 있습니까?


  • 답변 # 1

    어떤 라이브러리를 사용하는지 잘 모르겠지만 org.json이라면 다음과 같이 해보십시오 :

    int year = jsonArray.getJSONObject(i).getInt("year");
    
    

  • 답변 # 2

    int year = jsonArray.getJSONObject(i).getInt("year");
    String strYear = String.valueOf(year);
    
    

    이것을 사용하십시오.

  • 답변 # 3

    이 라인을 자세히 살펴보십시오 :

    int year = jsonArray.getJSONObject(i).get("year").toString();
    
    

    정수와 문자열을 추가하려고하면 java가 형식화 된 언어이므로 작동하지 않으며 컴파일러에서 플래그가 지정된 컴파일 시간 오류가 발생합니다.이 문제를 해결하기 위해 몇 가지 옵션이 있습니다. 제안은 다음과 같습니다.

    int result = Integer.parseInt(yourString) // good option, will account for ascii codes ang give you the correct value
    // now convert to a string like so:
    String.valueOf(result);
    // so your code would be:
    int year = Integer.parseInt(jsonArray.getJSONObject(i).get("year").toString());
    
    

  • 답변 # 4

    문자열을 int로 변환 할 수 있습니다

    Integer.parseInt(string);
    Integer.parseInt(jsonArray.getJSONObject(i).get("year").toString());
    
    

  • 답변 # 5

    public static String[] toStringArray(JSONArray array) {
    if(array==null)
        return null;
    String[] arr=new String[array.length()];
    for(int i=0; i<arr.length; i++) {
        arr[i]=array.optString(i);
    }
    return arr;
    }
    
    

관련 자료

  • 이전 crystal reports - 그룹 바닥 글 - 페이지 하단이 중간에 표시됩니다
  • 다음 spring integration - TcpNioClientConnectionFactory 및 TcpNetClientConnectionFactory