Principales respuestas
String separado por pipe a json

Pregunta
-
Hola a todos, alguien me hecha una mano en lo siguiente:
- Tengo un string separado por pipe, necesito llevarlo a un json, como logro hacer eso? imagino que hay que tomar en cuenta que previamente a cada campo del string hay que darle un nombre para luego llevar a json, bueno no se es por eso que lo consulto.
Saludos cordiales a todos.
Roy Sillerico
Respuestas
-
Podrías hacerlo a mano, troceando el string y concatenando las cadenas para formar el Json:
string ejemplo = "xxx|yyy|zzz"; string[] partes = ejemplo.Split('|'); StringBuilder sb = new StringBuilder(); sb.Append("{"); for (int i=0; i < partes.Length; i++) { sb.AppendFormat("campo{0}:\"{1}\",", i+1, partes[i]); } sb.Remove(sb.Length-1, 1); sb.Append("}"); string json = sb.ToString();
- Editado Alberto PoblacionMVP, Moderator miércoles, 25 de octubre de 2017 19:20
- Marcado como respuesta Roy Sillerico Segurondo miércoles, 25 de octubre de 2017 19:28
Todas las respuestas
-
No hay que hacer nada. El pipe no es un carácter reservado en JSON. Se puede dejar exactamente igual. Por ejemplo, el string "a|b" se codifica en JSON como "a|b". Otra cosa sería que contuviese cosas como una barra invertida o unas comillas dobles, pero el pipe no tiene problema, se puede dejar dentro del string sin hacerle ningún cambio.
- Propuesto como respuesta Juan MondragónModerator miércoles, 25 de octubre de 2017 17:51
- Marcado como respuesta Roy Sillerico Segurondo miércoles, 25 de octubre de 2017 17:53
- Desmarcado como respuesta Roy Sillerico Segurondo miércoles, 25 de octubre de 2017 17:53
-
A pos creo que no logre hacerme entender bien, lo que quiero es que por ejemplo un string "xxx|yyy|zzz"
se pase a un strinf como si de una clase con 3 atributos estuviese siendo srealizado, o sea {campo1:xxx, campo2:yyy, campo3:zzz}, algo asi, esa es la idea
Roy Sillerico
-
Podrías hacerlo a mano, troceando el string y concatenando las cadenas para formar el Json:
string ejemplo = "xxx|yyy|zzz"; string[] partes = ejemplo.Split('|'); StringBuilder sb = new StringBuilder(); sb.Append("{"); for (int i=0; i < partes.Length; i++) { sb.AppendFormat("campo{0}:\"{1}\",", i+1, partes[i]); } sb.Remove(sb.Length-1, 1); sb.Append("}"); string json = sb.ToString();
- Editado Alberto PoblacionMVP, Moderator miércoles, 25 de octubre de 2017 19:20
- Marcado como respuesta Roy Sillerico Segurondo miércoles, 25 de octubre de 2017 19:28