今天给app弄银联支付接口。直接copy银联的sdk。结果。安卓和ios始终报json格式错误。找了半天。都没找到问题。最后怀疑可能是BOM破坏了json的数据格式转换。验证后确认是BOM的问题。为方便以后遇见BOM的问题的快速解决。写了个python版本的去除BOM小脚本。。
1 #!/usr/bin/env python 2 3 import os,sys; 4 5 6 def listPath(path): 7 if os.path.isdir(path): 8 listDir = os.listdir(path) 9 for file in listDir: 10 file = path + "/"+ file 11 listPath(file) 12 else: 13 clear_bom(path); 14 15 16 def clear_bom(file): 17 fp = open(file,'rb') 18 str = fp.read(3) 19 if "\xef\xbb\xbf" == str: 20 content = fp.read() 21 fp.close(); 22 fp = open(file,"wb") 23 fp.write(content) 24 fp.close() 25 print("Succ clear bom :" + file); 26 else: 27 fp.close() 28 29 30 if __name__ == '__main__': 31 if len(sys.argv) == 1: 32 pass 33 else: 34 listPath(sys.argv[1]) 35 print("clear bom ok....................")