关于网络传输中的特殊符号+、\、/等符号的解决方法。

发布时间:2024年01月11日

在网络Http传输中,特使的符号有特殊的作用,不能按照你想象的方式可以顺利传输的,所以导致数据传过去后无法正常解析(因为中途被篡改了),以Base64数据传输来说,就存在+号和/号的问题,先解决+号的传输:

 string data = img_64.Replace("+","%2B");         //+号不能传输,替换掉可以,很重要

将字符串的“+”号全部替换成"%2B"就可以了,传输过去到接收端后,解出来的直接就是+号了,不需要再次解码。

还有/这个符号:先直接传输,传到网上后“/”这个字符会变成“\ /”(不是V啊),是反斜杠\加斜杠/,是特殊字符----转义字符,可以理解为\r\n就是换行回车的意思一样,\ /就是/的意思,那怎么在接收端改回来呢:

text_value = text_value000.Replace("\\", "");           //转换字符\,这里用两个\\转译,实际上是一个字符---------重要

这个“\”要理解一下,不是2个\,而是指一个,因为第一个\是转义字符,替换成没有字符,就是删除“\”,这两步操作后,数据被还原到传输状态了。

也是网上搜索很多资料后再自己想的方法,很实用。希望对你有所帮助。

文章来源:https://blog.csdn.net/ztvzbj/article/details/135520909
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。