如何在c#中将字符串转换为json

本文关键字:字符串 转换 json | 更新日期: 2023-09-27 18:14:21

我在c#中有以下字符串,

"2015-9-9,2015-9-10,2015-9-11,2015-9-12,2015-9-13,2015-9-14"

现在我想将其转换为javascript变量,如以下json格式。我想发送到服务器端到客户端在一个变量,需要在javascript变量中使用。

var avadates = ["2015-9-9", "2015-9-10", "2015-9-11", "2015-9-12", "2015-9-13", "2015-9-14"];

所以,如何转换Json从c#或任何其他方式做到这一点?

如何在c#中将字符串转换为json

这将获取每个日期,然后将其转换为字符串,并将0添加到月份,然后合并所有日期:

string toJsonify = "2015-9-9,2015-9-10,2015-9-11,2015-9-12,2015-9-13,2015-9-14";
var dates = toJsonify.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)
                .Select(s => DateTime.ParseExact(s, "yyyy-M-d", System.Globalization.CultureInfo.InvariantCulture)
                                     .ToString("yyyy-MM-dd"));
var res = "['"" + string.Join("'",'"", dates) + "'"]";

可能不是实现您想要的最优雅的方式,但是使用JSON.net库,您可以使用以下代码在J数组中获得结果。

string sample = "2015-9-9,2015-9-10,2015-9-11,2015-9-12,2015-9-13,2015-9-14";
        List<string> list = sample.Split(',').ToList<string>();
        string json = JsonConvert.SerializeObject(list);
        JArray result = JArray.Parse(json);