Сохранение значения из файла JSON в строку [duplicate]

Принятый ответ Бобинса - это короткое портативное решение. Если вам нужно не только добавлять SVG, но и манипулировать им, вы можете попробовать библиотеку JavaScript «Pablo» (я ее написал). Он будет хорошо знаком с пользователями jQuery.

Пример вашего кода выглядел бы так:

$(document).ready(function(){
    Pablo("svg").append('');
});

Вы также можете создавать элементы SVG «на лету» без указания разметки:

var circle = Pablo.circle({
    cx:100,
    cy:50,
    r:40
}).appendTo('svg');

2
задан Frantumn 2 September 2015 в 19:57
поделиться

2 ответа

JObject.Parse() ожидает фактическое содержимое JSON (строка), а не путь.

Ваш JSON действительно представляет собой массив, чтобы вместо этого использовать JArray.Parse(). Кроме того, преобразование строки JSON в JObject, а затем назад ToString() действительно не добавляет здесь никакого «значения».


Это должно сделать это.

string json = File.ReadAllText(HttpContext.Current.Server.MapPath("~/testing/testData.json"));
var result = JsonConvert.DeserializeObject<List<orResult>>(json);
2
ответ дан Mikko Viitala 16 August 2018 в 12:10
поделиться

Вы пытаетесь десериализовать переведенный путь («c: \ whatever \ ... \ testing \ testData.json»), который возвращает MapPath , то есть не содержимое файла.

Попробуйте что-то вроде этого:

JObject jsonData = JObject.Parse(File.ReadAllText(path));

... но опять же нет необходимости использовать Parse(), поскольку вам не нужно JObject. Просто десериализуйте непосредственно на List<orResult>:

var result = JsonConvert.DeserializeObject<List<orResult>>(File.ReadAllText(path));
0
ответ дан Micke 16 August 2018 в 12:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: