org.json - CDL
La classe CDL fournit des méthodes statiques pour convertir un texte délimité par des virgules en JSONArray, et vice versa.
Les méthodes suivantes sont couvertes dans l'exemple.
rowToJSONArray(String) - Convertit un texte délimité par des virgules en objet JSONArray.
rowToString(JSONArray) - Convertit un JSONArray en texte délimité par des virgules.
toJSONArray(String) - Convertit un texte délimité par des virgules sur plusieurs lignes en objet d'objets JSONArray.
toJSONArray(JSONArray, String) - Convertit un objet JSONArray et un texte délimité par des virgules en objet JSONArray.
Exemple
import org.json.CDL;
import org.json.JSONArray;
import org.json.JSONTokener;
public class JSONDemo {
public static void main(String[] args) {
String csvData = "INDIA, UK, USA";
//Case 1: CSV to JSON Array
JSONArray jsonArray = CDL.rowToJSONArray(new JSONTokener(csvData));
System.out.println(jsonArray);
//Case 2: JSONArray to CSV
System.out.println(CDL.rowToString(jsonArray));
//Case 3: CSV to JSONArray of Objects
csvData = "empId, name, age \n" +
"1, Mark, 22 \n" +
"2, Robert, 35 \n" +
"3, Julia, 18";
System.out.println(CDL.toJSONArray(csvData));
//Case 4: CSV without header
jsonArray = new JSONArray();
jsonArray.put("empId");
jsonArray.put("name");
jsonArray.put("age");
csvData = "1, Mark, 22 \n" + "2, Robert, 35 \n" + "3, Julia, 18";
System.out.println(CDL.toJSONArray(jsonArray,csvData));
}
}
Production
["INDIA","UK","USA"]
INDIA,UK,USA
[{"name":"Mark","empId":"1","age":"22"},
{"name":"Robert","empId":"2","age":"35"},
{"name":"Julia","empId":"3","age":"18"}]
[{"name":"Mark","empId":"1","age":"22"},
{"name":"Robert","empId":"2","age":"35"},
{"name":"Julia","empId":"3","age":"18"}]