public static string GetPayType() { payTypeList.Clear(); int idx = 0; while (true) { string pt = CUtils.ReadIniValue("Pay_Type_Info", "pt" + idx, "", Global.ConfigPath + "config.ini"); if (pt != "") { PayTypeInfo pti = new PayTypeInfo(); pti.payTypeValue = idx; pti.payTypeDesc = pt; payTypeList.Add(pti); idx++; } else { break; } } if (payTypeList.Count > 0) { return(JsonConvert.SerializeObject(payTypeList)); } else { return("[{\"error\":1}]"); } }
/// <summary> /// 读取支付方式列表 /// </summary> public static void LoadPayType() { string path = Global.ConfigPath + "PayType.bytes"; if (File.Exists(path)) { payInfoDic.Clear(); using (FileStream fileStream = File.OpenRead(path)) { byte[] buffer = new byte[fileStream.Length]; fileStream.Read(buffer, 0, buffer.Length); for (int i = 0; i < fileStream.Length; ++i) { buffer[i] = (byte)(buffer[i] ^ 0x37); } using (BinaryReader reader = new BinaryReader(new MemoryStream(buffer))) { ushort count = reader.ReadUInt16(); for (int i = 0; i < count; ++i) { PayTypeInfo pti = new PayTypeInfo(); pti.packageName = reader.ReadString(); pti.appId = reader.ReadString(); pti.payTypeValue = reader.ReadInt32(); pti.payTypeDesc = reader.ReadString(); pti.exParam = reader.ReadString(); payInfoDic.Add(pti.appId, pti); } } } } }