簡體   English   中英

將JSONArray轉換為String []數組

[英]Convert JSONArray to String[] Array

我有這樣的問題..

["IMG-20181223-WA0010.jpg","IMG-20181225-WA0013.jpg","IMG-20181229-WA0001.jpg"]

如何在Java中從真實數組轉換JSONArray? 對不起英語不好..

String[] stringArray = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
    stringArray[i]= (String)jsonArray.getJSONObject(i);
}

jsonArray是您的JSON對象, stringArray變量將存儲為字符串數組類型

您應該嘗試這樣,它將對您有所幫助

import net.sf.json.JSONArray;

public class JsonArraytoArray {

    JSONArray jsonArray = new JSONArray();

    public void convertJsonarrtoArray() {
        jsonArray.add("java");
        jsonArray.add("test");
        jsonArray.add("work");
        String[] stringArray = new String[jsonArray.size()];
        for (int i = 0; i < jsonArray.size(); i++) {
            stringArray[i] = jsonArray.getString(i);
        }
        System.out.println("stringArray  " + stringArray.length);
    }

    public static void main(String[] args) {
        JsonArraytoArray d = new JsonArraytoArray();
        d.convertJsonarrtoArray();
    }

}

我將JSONArray放入字符串toString() ,並通過正則表達式進行轉換,例如..

public String getImg(String d){
    return rubahFormat(d).split(",");
}

public String rubahFormat(String d){
    return d.replaceAll("[\\[\\]\\\"]","");
}

謝謝 ..

您可以使用Java Streams為您做到這一點:

    String[] data = new String[] { "value1", "value2", "value3" };
    String jsonArray = "[\"" + Stream.of(data).collect(Collectors.joining("\", \"")) + "\"]";

蒸汽收集器在兩個值之間添加", " 現在,只需在開頭和相應的末尾添加["

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM