在开发中遇见一个将文件流转换为Base64码,这个码中有特殊字符需要处理,然后选择用
HttpUtility.UrlEncode进行编码
HttpUtility.UrlEncode(text); //utf-8 编码 HttpUtility.UrlDecode(text); //utf-8 解码 HttpUtility.UrlEncode(text, System.Text.Encoding.GetEncoding(936)); //gb2312编码 HttpUtility.UrlDecode(text, System.Text.Encoding.GetEncoding(936)); //gb2312解码
后来查找文章发现这个方法会将空格转换为+
这是就需要将+替换为空格对应的ASCII码(%20)
fileStream = HttpUtility.UrlEncode(fileStream); fileStream = fileStream ("+", "%20");
js的转码可以查看文章 https://www.cnblogs.com/ZJ199012/p/7356753.html
参考 https://www.cnblogs.com/luckyuns/p/6396792.html