Vous ne trouvez pas le chemin à l'aide de Safe Java ? Ne vous inquiétez pas! L'éditeur PHP Xinyi vous propose une solution. Lors du développement Java, vous rencontrez parfois le problème que le chemin spécifié est introuvable. Cela peut être dû à des paramètres de chemin de fichier incorrects ou au fait que le fichier n'existe pas. Cet article vous expliquera comment résoudre ce problème et proposera des solutions courantes. Explorons ensemble !
Voici mon code, j'essaye de définir la valeur au format json :
{"details": "{\"user\":\"user1\",\"password\":\"1234\"}"}
Ici, je dois définir les données dans user et pass mais elles sont placées entre guillemets doubles (""
).
J'ai essayé le chemin avec detail.user
mais ça ne marche pas :
ObjectMapper mapper = new ObjectMapper(); ObjectNode node = (ObjectNode) mapper.readTree(new File(templatePath)); // System.out.println(node); Configuration config = Configuration.builder() .jsonProvider(new JacksonJsonNodeJsonProvider()) .mappingProvider(new JacksonMappingProvider()).build(); json = JsonPath.using(config).parse(node); for (int i = 0; i < list.size(); i++) { String x = list.get(i); arr = x.split(": "); String newHeader = arr[0].replace("|", "."); if (newHeader.contains("[")) { String nHeader = "$." + newHeader; String actualVal; if (arr.length >= 2) { actualVal = arr[1]; } else { actualVal = ""; } json.set(nHeader, actualVal).jsonString(); } else { String actualVal; if (arr.length >= 2) { actualVal = arr[1]; } else { actualVal = ""; } json.set(newHeader, actualVal).jsonString(); } }
J'ai essayé d'utiliser le code ci-dessus pour définir les données. Mais j'ai reçu exception
.
Référez-vous au code suivant et essayez de mettre à jour votre objet. Vous pouvez utiliser gson ou jackson pour gérer les objets json. Veuillez faire un peu de travail avant de poster une question.
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; public class JsonUpdateExample { public static void main(String[] args) { // Sample JSON string String jsonString = "{\"name\":\"John\", \"age\":25, \"city\":\"New York\"}"; // Field to update String fieldToUpdate = "age"; // New value for the field int newValue = 30; // Update the JSON String updatedJson = updateJsonField(jsonString, fieldToUpdate, newValue); // Print the updated JSON System.out.println(updatedJson); } private static String updateJsonField(String jsonString, String fieldToUpdate, int newValue) { try { // Create ObjectMapper ObjectMapper objectMapper = new ObjectMapper(); // Read the JSON string into a JsonNode JsonNode jsonNode = objectMapper.readTree(jsonString); // Update the field ((ObjectNode) jsonNode).put(fieldToUpdate, newValue); // Convert the updated JsonNode back to a JSON string return objectMapper.writeValueAsString(jsonNode); } catch (Exception e) { e.printStackTrace(); return jsonString; // return the original JSON in case of an error } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!