C#实现根据银行卡卡号判断银行名

yizhihongxing

C#实现根据银行卡卡号判断银行名的方法可以分为以下几个步骤:

步骤一:了解银行卡卡号规则

在判断银行名之前,我们需要了解银行卡卡号的规则,常见银行卡卡号长度如下:

  • 中国银行:19位
  • 工商银行:16位或19位
  • 农业银行:19位
  • 建设银行:19位
  • 交通银行:16位或19位
  • 中信银行:16位或19位
  • 招商银行:16位或19位
  • 浦发银行:16位或19位
  • 兴业银行:16位或19位
  • 平安银行:16位或19位
  • 中国邮政储蓄银行:19位

除此之外,不同银行卡号的前缀数字也有所不同。

步骤二:编写代码

接下来,我们就可以根据银行卡号的前缀数字判断其对应的银行名称了。下面是一段示例代码,其中使用了Switch语句,根据银行卡号前缀数字的不同,返回对应的银行名称。

public string GetBankName(string cardNo)
{
    if (string.IsNullOrEmpty(cardNo))
    {
        throw new ArgumentException("银行卡号不能为空!");
    }

    string bankName = "";
    switch (cardNo.Substring(0, 6))
    {
        case "622150":// 邮储银行
            bankName = "中国邮政储蓄银行";
            break;
        case "955880":// 平安银行
            bankName = "平安银行";
            break;
        case "620200":// 招商银行
        case "622580":
        case "622588":
            bankName = "招商银行";
            break;
        case "623058":
        case "623057":
        case "622242":
        case "622239":// 光大银行
            bankName = "中国光大银行";
            break;
        case "621691":
        case "621700":
        case "621691":
        case "622966":
        case "622988":
        case "622989":
        case "622999":// 建设银行
            bankName = "中国建设银行";
            break;
        case "621021":// 建设银行
        case "622276":
        case "622187":
        case "622878":
            bankName = "中国工商银行";
            break;
        case "623072":
        case "623072":
        case "622280":
        case "622230":// 浦发银行
            bankName = "上海浦东发展银行";
            break;
        case "623019":// 农业银行
        case "622836":
        case "622837":
        case "622848":
        case "622849":
            bankName = "中国农业银行";
            break;
        case "622260":// 交通银行
        case "622250":
        case "622251":
        case "622253":
        case "622255":
        case "622256":
        case "622258":
            bankName = "中国交通银行";
            break;
        case "623058":
        case "623057":
        case "622242":
        case "622239":// 中信银行
            bankName = "中信银行";
            break;
        case "623500":// 兴业银行
        case "622909":
        case "622908":
        case "622906":
            bankName = "兴业银行";
            break;
        default:
            throw new ArgumentException("银行卡号不存在!");
    }

    return bankName;
}

步骤三:验证代码

我们可以通过以下两个示例来测试判断银行名称的代码的准确性:

示例一

银行卡号:6212261202004272456

所属银行:招商银行

调用代码:

string bankName = GetBankName("6212261202004272456");

示例二

银行卡号:6222023702016821241

所属银行:中国工商银行

调用代码:

string bankName = GetBankName("6222023702016821241");

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#实现根据银行卡卡号判断银行名 - Python技术站

(0)
上一篇 2023年6月7日
下一篇 2023年6月7日

相关文章

  • 详解c# 事件总线

    详解C#事件总线攻略 事件总线是一种让不同对象之间相互通信的方式。它可以让多个对象在程序运行时相互协作,轻松实现松耦合(loose coupling)和高内聚(high cohesion)的编程状态。 事件总线的基础知识 事件总线是一个对象,它处理应用程序中的所有事件,并将它们发送给已经订阅这些事件的对象。这些对象被称为“事件订阅者”。 事件总线的实现方式 …

    C# 2023年6月6日
    00
  • 计算机网络编程MQTT协议基础原理详解

    计算机网络编程MQTT协议基础原理详解 什么是 MQTT 协议? MQTT 是一种轻量级的,基于发布/订阅模式的通信协议,适用于 Internet of Things(IoT)领域中的低带宽、不可靠的网络环境。 mqtt 协议构建于 TCP/IP 协议之上,通信双方包括一个客户端和一个服务器(也称为代理或 broker)。客户端面向应用系统,将数据发布到服务…

    C# 2023年6月1日
    00
  • Docker大型项目容器化改造

    Docker大型项目容器化改造 Docker 是一种流行的容器化技术,可以将应用程序和其依赖项打包到一个容器中,以便在不同的环境中运行。本攻略将介绍如何将大型项目容器化改造,包括 Dockerfile 的编写、镜像的构建和容器的部署等步骤。 编写 Dockerfile Dockerfile 是用于构建 Docker 镜像的脚本文件,其中包含了构建镜像所需的所…

    C# 2023年5月17日
    00
  • C#中常见的系统内置委托用法详解

    一、概述 在 C# 中,委托是一种特殊的类型,它可以用于封装方法,调用委托实际上就是调用所封装的方法。在 .NET Framework 中,一些常见的方法参数和事件都采用委托作为参数类型。同时,C# 中还有一些内置的系统委托类型,这些委托类型定义了一些常用的委托签名,方便开发者直接调用,从而简化代码的编写。本文将详细讲解 C# 中常见的系统内置委托用法。 二…

    C# 2023年5月31日
    00
  • NopCommerce架构分析之(六)自定义RazorViewEngine和WebViewPage

    NopCommerce架构分析之(六)自定义RazorViewEngine和WebViewPage 在NopCommerce中,RazorViewEngine和WebViewPage是用于处理视图的两个重要组件。RazorViewEngine用于查找和呈现视图,而WebViewPage用于定义视图的布局和内容。本文将介绍如何自定义RazorViewEngin…

    C# 2023年5月15日
    00
  • C#编程自学之数据类型和变量二

    C#编程自学之数据类型和变量二 总体思路 回顾C#中常用的数据类型和变量声明方法 学习如何将变量转换成其他数据类型 实践编写几个示例程序,加深对知识点的理解和应用能力 回顾常用的数据类型和变量声明 C#中常用的数据类型有: 整型:sbyte、byte、short、ushort、int、uint、long、ulong 浮点型:float、double、deci…

    C# 2023年5月31日
    00
  • c#判断代码是否执行超时的几种方式总结

    让我们来详细讲解一下“c#判断代码是否执行超时的几种方式总结”。 1. 前言 在执行c#代码的过程中,有些情况下我们需要判断代码是否执行超时。比如:当执行某个查询sql时,由于数据量过大或查询条件不合理,就可能会导致查询时间过长,这时候我们就需要用到本文介绍的几种方式来判断是否执行超时。 2. 判断代码是否执行超时的几种方式 本文将介绍如下几种方式: 2.1…

    C# 2023年6月6日
    00
  • C# 三种方式实现Socket数据接收

    C#是一种基于对象的程序设计语言,可以使用它来实现Socket数据接收。在C#中,Socket可以通过三种方式进行数据接收,分别是:同步方式、异步方式和事件驱动方式。 同步方式 同步方式是一种阻塞式的接收方式,即程序执行在接收Socket数据的阶段会一直阻塞,直到数据接收完成后程序才会继续执行。 代码示例: using System; using Syste…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部