JSON can be used as adata exchange format, it islightweightandlanguage independent. AJSONArraycan parse a text string to produce an object similar to avector, and supports thejava.util.Listinterface. We can use theorg.json.CDLclass to convert the JSON array toCSV format, which provides a static methodtoString()forConvert JSONArray to comma separated text. We need to import theorg.apache.commons.io.FileUtilspackage to store data in a CSV file using thewriteStringToFile()method.
public static java.lang.String toString(JSONArray ja) throws JSONException
In the below example, we can convert a JSON Array to CSV format.
import java.io.File; import org.apache.commons.io.FileUtils; import org.json.*; public class ConvertJsonToCSVTest { public static void main(String[] args) throws JSONException { String jsonArrayString = "{\"fileName\": [{\"first name\": \"Ravi\",\"last name\": \"Chandra\",\"location\": \"Bangalore\"}]}"; JSONObject output; try { output = new JSONObject(jsonArrayString); JSONArray docs = output.getJSONArray("fileName"); File file = new File("EmpDetails.csv"); String csv = CDL.toString(docs); FileUtils.writeStringToFile(file, csv); System.out.println("Data has been Sucessfully Writeen to "+ file); System.out.println(csv); } catch(Exception e) { e.printStackTrace(); } } }
Data has been Sucessfully Writeen to EmpDetails.csv last name,first name,location Chandra,Ravi,Bangalore
The above is the detailed content of How to convert JSON array to CSV in Java?. For more information, please follow other related articles on the PHP Chinese website!