今天给app弄银联支付接口。直接copy银联的sdk。结果。安卓和ios始终报json格式错误。找了半天。都没找到问题。最后怀疑可能是BOM破坏了json的数据格式转换。验证后确认是BOM的问题。为方便以后遇见BOM的问题的快速解决。写了个python版本的去除BOM小脚本。。
1 #!/usr/bin/env python 2 #coding=utf-8 3 4 """ 5 清除指定目录下面文件的BOM 6 不包含子目录 7 8 用法 ./clearBOM.py 文件目录 9 10 """ 11 12 import sys; 13 import os; 14 15 def main(dirPath): 16 if dirPath[:-1] == ‘/‘: 17 dirPath = dirPath[:-1] 18 fileList = os.listdir(dirPath) 19 for fileName in fileList: 20 tmp = dirPath + "/" + fileName; 21 if os.path.isfile(tmp): 22 clearBOM(tmp) 23 24 """ 25 清除BOM 26 """ 27 def clearBOM(filePath): 28 fp = open(filePath,‘rb+‘) 29 if "\xef\xbb\xbf" == fp.read(3): 30 contents = fp.read() 31 fp.seek(0) 32 fp.write(contents) 33 print("Clear " + filePath + " UTF-8 BOM succ"); 34 fp.close() 35 return True; 36 37 38 if __name__ == ‘__main__‘: 39 main(sys.argv[1])
时间: 2024-11-05 01:18:37