精易论坛

标题: 关于Linx下换行符到Windows下编码丢失的情况改进 [打印本页]

作者: Catch腾大仙    时间: 2019-12-14 23:42
标题: 关于Linx下换行符到Windows下编码丢失的情况改进
本帖最后由 Catch腾大仙 于 2019-12-15 00:03 编辑

今天在搞一个网页Post的时候,发现Json老是解析失败,逐个分析代码,发现Linux下的\n换行符在windows下编码自动消失了,原因很简单,在不同的操作系统中,换行符的存储方式不同,如linux系统以\n表示,而Mac OS以\r表示,windows系统则以\r\n表示[url=]附件[/url],故在不同的操作系统下用易语言读取文本文件时,需要做相应的处理,否则很容易出现换行符丢失的情况,我测试了C#也是这样的情况,系统会自动处理掉\n而不进行换行。





这可是致命的问题,在Post的时候,用到编码_usc2到ansi()命令时,你Json解析不了啊,他会给你添加Linux下的换行,而你用命令识别#换行符识别的是Windows下的,你怎可能找得到嘛,单它又是确确实实存在的,我看很多易求助都有这个问题,而论坛各路大神都给出了删空行的建议,,那都是判断的Windows下的换行,你怎么去删嘛,这次给出了例子,解决了大家写软中很常见的BUG,模块献上,希望管理参考下,或者继续改进下。

源码展示了几个例子的用法,都是经常用到的,望大家一起改进。给各位大大线上改进后的模块源码,以及使用例子。望采纳



@项目部004  @客服部·桃子  @冰点




模块改进源码.rar

3.59 MB, 下载次数: 5, 下载积分: 精币 -2 枚


作者: 斜飞    时间: 2019-12-15 03:13
\\n可以把\n输出出来
作者: 项目部004    时间: 2019-12-18 15:51

不需要这么复杂,在解析步骤中加了两行替换就支持了!

补充内容 (2019-12-18 15:54):
  
局_JSON文本 = 子文本替换 (局_JSON文本, 字符 (13), “\r”, , , )
局_JSON文本 = 子文本替换 (局_JSON文本, 字符 (10), “\n”, , , )

作者: Catch腾大仙    时间: 2019-12-18 19:15
项目部004 发表于 2019-12-18 15:51
不需要这么复杂,在解析步骤中加了两行替换就支持了!

补充内容 (2019-12-18 15:54):

文件读取的时候替换是有用的,而且这个子文本替换去除不掉 我试了 现在还有接口也可以测试,




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4