我有一个控制台应用程序,并通过POST方法将一个字符串内容(你可以说很长的评论)写入LiquidPlanner评论。我有一个长字符串有一些HTML标签,并维护如下格式。
当我通过JsonConvert.SerializeObject进行序列化时,那个注释的格式化正在打破并在另一侧写为乱码文本,如下所示。
我尝试了以下链接,但没有帮助。 Link for serialization
如何序列化完全相同?有什么办法请尽快告诉我,谢谢你。
答案 0 :(得分:0)
错误原因: 我解决了这个问题,实际上在原始字符串中发生了什么,你可以看到新行,所以当这个字符串传入字符串变量然后.Net环境把\ r \ n放在每一个新行上,当我从newton.json库序列化它在\ r和\ n(\\ r \\ n)中添加一个斜杠,所以当我在LiquidPlanner中POST字符串时,LiquidPlanner无法解释(\\ r \\ n)并以非格式化方式写入文本。
错误解决方案 我做了什么,我使用正则表达式并将序列化字符串中的\\ r \\ n替换为带有标签并发布,这对我有用。
string.Join("<br/>", System.Text.RegularExpressions.Regex.Split(createCommentJson, @"(?:\\r\\n|\\n|\\r)"));
并以格式化方式发布。 :)