Saving a JSON object to file.JSON

59,081

Solution 1

You can use write:

library(RJSONIO)
list1 <- vector(mode="list", length=2)
list1[[1]] <- c("a", "b", "c")
list1[[2]] <- c(1, 2, 3)

exportJson <- toJSON(list1)
> exportJson
[1] "[\n [ \"a\", \"b\", \"c\" ],\n[      1,      2,      3 ] \n]"
write(exportJson, "test.json")
library("rjson")
json_data <- fromJSON(file="test.json")
> json_data
[[1]]
[1] "a" "b" "c"

[[2]]
[1] 1 2 3

Solution 2

There is also the jsonlite package:

library(jsonlite)

exportJSON <- toJSON(list1)
write(exportJSON, "test.json")
list2 <- fromJSON("test.json")

identical(list1, list2)
Share:
59,081

Related videos on Youtube

Nathan Calverley
Author by

Nathan Calverley

My name is Nathan Calverley, and I run the Wisconsin-based consulting firm BadgerStats. We provide expert training in R programming skills at competitive hourly rates. We also provide expert statistical consulting for businesses, government agencies, and college students. Visit our page to learn more!

Updated on July 09, 2022

Comments

  • Nathan Calverley
    Nathan Calverley almost 2 years

    I've create a JSON file, and I need to be able to share the file via email with other collaborators. However, although there are plenty of topics available on handling JSON objects in the R workspace, there are virtually no resources discussing how to actually export a JSON object to a .JSON file.

    Here's a simple example:

    list1 <- vector(mode="list", length=2)
      list1[[1]] <- c("a", "b", "c")
      list1[[2]] <- c(1, 2, 3)
    
    exportJson <- toJSON(list1)
    
    ## Save the JSON to file
    save(exportJson, file="export.JSON")
    
    ## Attempt to read in the JSON
    library("rjson")
    json_data <- fromJSON(file="export.JSON")
    

    The final line, attempting to read in the JSON file, results in an error: "Error in fromJSON(file = "export.JSON") : unexpected character 'R'"

    Obviously the save() function is not the way to go, but after extensive googling, I have found nothing that says how to export the JSON to a file. Any help would be greatly appreciated.

    • jdharrison
      jdharrison almost 10 years
      Just use write(exportJson, file="export.JSON")
  • Mpizos Dimitris
    Mpizos Dimitris over 8 years
    I am using this method but it writes the file in one line. Any idea how can I overpass it? Can see also in this link: stackoverflow.com/questions/33958711/…
  • PM0087
    PM0087 over 3 years
    But where is the file written to?