C#检查标准图幅编号
/// <summary>
/// 检查是否为标准图幅编号
/// </summary>
/// <param name="MapNumber">图幅编号</param>
/// <returns>检查结果True/false</returns>
private bool CheckMapNumber(string MapNumber)
{
int ColumnNumber100;
if (MapNumber.Length == 3)//1:100万图幅规则
{
Regex RegMapNumber = new Regex(@"^[A-S]\d\d$");
if (RegMapNumber.IsMatch(MapNumber.ToUpper()))
{
ColumnNumber100 = Convert.ToInt32(MapNumber.Substring(1, 2));
if (ColumnNumber100 <= 60)
{ return true; }
}
}
if (MapNumber.Length == 10)//其他图幅规则
{
string ScaleMark = "";
int ColumnNumber;
int RowNumber;
int RowMax = 0;
int ColumnMax = 0;
Regex RegMapNumber = new Regex(@"^[A-S]\d\d[B-H]\d\d\d\d\d\d$");
if (RegMapNumber.IsMatch(MapNumber.ToUpper()))
{
ScaleMark = MapNumber.Substring(3, 1);
switch(ScaleMark)
{
case "B":
RowMax = 2;
ColumnMax = 2;
break;
case "C":
RowMax = 4;
ColumnMax = 4;
break;
case "D":
RowMax = 12;
ColumnMax = 12;
break;
case "E":
RowMax = 24;
ColumnMax = 24;
break;
case "F":
RowMax = 48;
ColumnMax = 48;
break;
case "G":
RowMax = 96;
ColumnMax = 96;
break;
case "H":
RowMax = 192;
ColumnMax = 192;
break;
default:
RowMax = 0;
ColumnMax = 0;
break;
}
ColumnNumber100 = Convert.ToInt32(MapNumber.Substring(1, 2));
RowNumber = Convert.ToInt32(MapNumber.Substring(4, 3));
ColumnNumber = Convert.ToInt32(MapNumber.Substring(7, 3));
if (ColumnNumber100 <= 60 && RowNumber <= RowMax && ColumnNumber <= ColumnMax)
{ return true; }
}
}
return false;
}
C#检查标准图幅编号的更多相关文章
- 嵌入式C语言自我修养 08:变参函数的格式检查
8.1 属性声明:format GNU 通过 __atttribute__ 扩展的 format 属性,用来指定变参函数的参数格式检查. 它的使用方法如下: __attribute__(( forma ...
- excel 2010 学习笔记一 Vlookup 函数的使用
有这么一句话说的好:在商用场合里,能证明你会基本的EXCEL操作技巧的两个检查标准就是会不会用VLOOKUP函数以及数据透视表功能,那么今天就来总结一下VLOOKUP的一些简单实用的功能. 1.VLO ...
- nginx入门
1. 前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Ngi ...
- Linux Hackers/Suspicious Account Detection
catalog . Linux黑客帐号攻击向量 . Linux可疑帐号检测模型 1. Linux黑客帐号攻击向量 0x1: 将黑客帐号添加到"root"组 . useradd ha ...
- 『TCP/IP详解——卷一:协议』读书笔记——03
2013-08-17 17:31:49 1.7 分用 分用(Demultiplexing):这是一个过程——当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议上的报文首 ...
- PowerDesigner使用教程 —— 概念数据模型 (转)
一.概念数据模型概述 概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充.它从用户的观点出发对信息进行建模,主要用于 ...
- 验证(Verification)与确认(Validation)的差别
验证(Verification)与确认(Validation)的差别 说法一: (2)“验证(Verification)”的涵义 通过提供客观证据对规定要求已得到满足的认定. (2)“确认(Valid ...
- OpenCV 编码样式指南
OpenCV 编码样式指南 前言 本文档是对OpenCV中代码风格的简短说明,因为OpenCV的核心库(cv,cvaux)是用C和C++编写的,所以本文档仅对用C和C++代码的编写有效. 文件 ...
- InstallShield集成安装MSDE2000最小版本(三) fishout特许授权发布
原文:InstallShield集成安装MSDE2000最小版本(三) fishout特许授权发布 原帖地址:http://blog.csdn.net/fishout/archive/2009/11/ ...
随机推荐
- nodejs 的安全
1.connect中间件csrf 原理:在express框架中csrf 是通过connect 模块的中间件来解决的.其原理是在前端构造一个隐藏的表单域“_csrf” ,后端生成一个值,作为该表单域,然 ...
- 关于SQLServer2008数据如何导入SQL2005的解决办法,高版本数据导入低版本中。
最近需要把SqlServer2008 的数据库导入sqlserver2005 中.直接备份还原肯定不行.后来想到可以生成脚本执行sql语句,并选择数据可以一同进行执行. 点击右键--->任务-- ...
- embarcadero radstudio xe5 正式版 下载地址
http://altd.embarcadero.com/download/radstudio/xe5/delphicbuilder_xe5_win.iso
- Android Dagger依赖注入框架浅析
今天接触了Dagger这套android的依赖注入框架(DI框架).感觉跟Spring 的IOC差点儿相同吧.这个框架它的优点是它没有採用反射技术(Spring是用反射的),而是用预编译技术.因为基于 ...
- 【News】SpagoBI中国官方微信对外发布
爱数据,爱分析,爱达比 致力于国际优秀开源BI应用在中国的普及推广,用数据开启中小企业智慧之门: 扫描上图二维码,关注SpagoBI中国官方微信,2015年8月18日将在腾讯课堂.百度传课.网易云课堂 ...
- 智能电表IEEE754 32位浮点格式
实例1 实例二
- javascript 的一些理解和随笔
一.iframe里面的页面调用父窗口,左右窗口js函数的方法 iframe里面的页面调用父窗口,左右窗口js函数的方法 实现iframe内部页面直接调用该iframe所属父窗口自定义函数的方法. 比如 ...
- 获取发布版SHA1获取
- pecl install imagick
steven@server:/var/www$ sudo pecl install imagickdownloading imagick-2.3.0.tgz ...Starting to downlo ...
- centos7.0 手动编译 lamp环境
首先新建用户 lamper,并添加 sodu权限 两种方法:is not in the sudoers file 解决(转) xx is not in the sudoers file 问题解决[转载 ...