当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 身份证15To18 的算法(C#)

ASP.NET
实现HtmlButton客户端控制网页提交
开发手记(三)
开发手记(二)
开发手记(一)
.net中PictureBox中图片的拖动
使用ADO.NET轻松操纵数据库
vb.net 中实现画图
C#中使用DirectX编程
LZW算法的 C#实现
在.NET上如何根据字符串动态创建控件
asp.net生成HTML
ASP.NET 2.0页面框架的几处变化
解读C#中的规则表达式
使DATAGRID中的日期按长日期格式显示
application和cache实现缓存的差异
.Net 下区别使用 ByRef/ByVal 的重要性
拷贝整个目录下所有子目录及文件的方法
Asp.net 页面导航的几种方法与比较
VB6 中 善用 ByRef 提升速度
如何使用.net操作ddeml?

ASP.NET 中的 身份证15To18 的算法(C#)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 93 ::
收藏到网摘: n/a

using System;
using System.Threading;
namespace KeyboardRecord
{
///
/// Class1 的摘要说明。
///

class Class1
{
///
/// 应用程序的主入口点。
///

[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
//
string a = Console.ReadLine();
if (a.Length!=15)
{
Console.WriteLine("Please input correct idnumber");
}
else
{
Console.WriteLine(getCheckCode(a));
}
}
static string getCheckCode(string sfzh)
{
char[] strJiaoYan = {''1'', ''0'', ''X'', ''9'', ''8'', ''7'', ''6'', ''5'', ''4'', ''3'', ''2''};
int[] intQuan = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1};
string strTemp;
int intTemp = 0;
strTemp = sfzh.Substring(0,6) + "19" + sfzh.Substring(6);
for (int i=0;i<=strTemp.Length-1;i++)
{
intTemp += int.Parse(strTemp.Substring(i,1))*intQuan[i];

}
intTemp = intTemp % 11;
return strTemp + strJiaoYan[intTemp];
}
} }