SQL函数:15位号码升级为18位

SQL code

 

--===================================================================
--
15位号码升级为18位
--
===================================================================
CreateFUNCTION[dbo].[ID15TO18](@id15char(15))
/*功能:将身份证的15位号码升级为18位


--
-- --调用函数
-- update
--     表
-- set
--     身份证号 = dbo.ID15TO18(身份证号)
-- where
--     LEN(身份证号) = 15
--
--
*/
RETURNSCHAR(18)
AS
BEGIN
   
DECLARE@ID18CHAR(18)
  
   
DECLARE@S1ASINTEGER
   
DECLARE@S2ASINTEGER
   
DECLARE@S3ASINTEGER
   
DECLARE@S4ASINTEGER
   
DECLARE@S5ASINTEGER
   
DECLARE@S6ASINTEGER
   
DECLARE@S7ASINTEGER
   
DECLARE@S8ASINTEGER
   
DECLARE@S9ASINTEGER
   
DECLARE@S10ASINTEGER
   
DECLARE@S11ASINTEGER
   
DECLARE@S12ASINTEGER
   
DECLARE@S13ASINTEGER
   
DECLARE@S14ASINTEGER
   
DECLARE@S15ASINTEGER
   
DECLARE@S16ASINTEGER
   
DECLARE@S17ASINTEGER
   
DECLARE@S18ASINTEGER
  
   
SET@S1=SUBSTRING(@ID15,1,1)
   
SET@S2=SUBSTRING(@ID15,2,1)
   
SET@S3=SUBSTRING(@ID15,3,1)
   
SET@S4=SUBSTRING(@ID15,4,1)
   
SET@S5=SUBSTRING(@ID15,5,1)
   
SET@S6=SUBSTRING(@ID15,6,1)
   
SET@S7=1
   
SET@S8=9
   
SET@S9=SUBSTRING(@ID15,7,1)
   
SET@S10=SUBSTRING(@ID15,8,1)
   
SET@S11=SUBSTRING(@ID15,9,1)
   
SET@S12=SUBSTRING(@ID15,10,1)
   
SET@S13=SUBSTRING(@ID15,11,1)
   
SET@S14=SUBSTRING(@ID15,12,1)
   
SET@S15=SUBSTRING(@ID15,13,1)
   
SET@S16=SUBSTRING(@ID15,14,1)
   
SET@S17=SUBSTRING(@ID15,15,1)
  
   
SET@S18=((@S1*7)+(@S2*9)+(@S3*10)+(@S4*5)+(@S5*8)+(@S6*4)+(@S7*2)+(@S8*1)
       
+(@S9*6)+(@S10*3)+(@S11*7)+(@S12*9)+(@S13*10)+(@S14*5)+(@S15*8)+(@S16
       
*4)+(@S17*2))%11
  
   
SET@ID18=SUBSTRING(@ID15,1,6)+'19'+SUBSTRING(@ID15,7,9)
       
+CASEWHEN@S18=0THEN'1'
             
WHEN@S18=1THEN'0'
             
WHEN@S18=2THEN'X'
             
WHEN@S18=3THEN'9'
             
WHEN@S18=4THEN'8'
             
WHEN@S18=5THEN'7'
             
WHEN@S18=6THEN'6'
             
WHEN@S18=7THEN'5'
             
WHEN@S18=8THEN'4'
             
WHEN@S18=9THEN'3'
             
WHEN@S18=10THEN'2'
        
END
  
   
RETURN@ID18
END

Posted in 软件开发 at January 21, 2010. by 傻猫 .    Views: 2926    5 Comments

Delphi身份证号码相关处理单元及例程

   本压缩包主要包括了身份证号码相关处理单元ascidnum.pas、2004年9月30日的县及县以上行政区划代码定义文件regioncode.dat、18位公民身份证号码的编排规则以及一个示例程序idn.exe及其源代码。

   区划代码转换为名称的部分,需要从外部文件中读取区划定义的数据(如随单元发布的文件regioncode.dat)。
   该文件为纯文本文件,每行是一个代码和名称的对应关系。代码和名称之间以逗号作分隔。以#开头的行作为注释行,空行不处理。程序中作了一定的容错处理,通常情况下,不正确的数据会被略过。但在重新编排时,还是请尽量保证数据的正确性。

   另外,为了保证查找的效率,所以要求文件中的记录按区划代码由小到大的顺序排列。  

2006210203045843.gif

  公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。其含义如下:

  1. 地址码:表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。

  2. 出生日期码:表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日分别用4位、2位、2位数字表示,之间不用分隔符。

  3. 顺序码:表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。

  校验的计算方式:

  1. 对前17位数字本体码加权求和
  公式为:S = Sum(Ai * Wi), i = 0, ... , 16
  其中Ai表示第i位置上的身份证号码数字值,Wi表示第i位置上的加权因子,其各位对应的值依次为: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2

  2. 以11对计算结果取模
  Y = mod(S, 11)

  3. 根据模的值得到对应的校验码
  对应关系为:
     Y值: 0 1 2 3 4 5 6 7 8 9 10
  校验码: 1 0 X 9 8 7 6 5 4 3 2

Posted in 软件开发 at January 21, 2010. by 傻猫 .    Views: 4485    No Comments

delphi完整身份证效验程序实例

根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,
公民身份号码是特征组合码18位:由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
地址码表示编码对象常住户口所在县(市、旗、区)的行政区划代码。生日期码表示编码对象出生的年、月、日,其中年份用四位数字表示,年、月、日之间不用分隔符。顺序码表示同一地址码所标识的区域范围内,对同年、月、日出生的人员编定的顺序号。顺序码的奇数分给男性,偶数分给女性。
15位:六位数字地址码,六位数字出生日期码,三位数字顺序码和一位数字校验码。
var
    codeInfoTst: Tstrings; //总
    codeTst: Tstrings; //代码
    InfoTst: Tstrings; //地址信息

function identityInfo(identitycode: string): string;
//由年月日判断是否为有效日期
    function IsDate(Year, Month, Day: string): Boolean;
    var
        st: string;
    begin

        st := Year + '-' + Month + '-' + day;
        try
            StrToDate(st);
            Result := True;
        except

            Result := False;

        end;
    end;


    function getdetailedFromCode(code: string): string; //由身份证的前六位获得省份县市信息(www.xxlinux.com)
    var
        Index: integer;
        St: string;
    begin
        index := codeTst.IndexOf(code);
        if index = -1 then
        begin
            Result := '';
            exit;
        end;
        st := infoTst[index]; //县
        code := copy(code, 1, 4) + '00';
        index := codeTst.IndexOf(code);
        if index = -1 then
        begin
            Result := st;
            exit;
        end;
        st := infoTst[index] + st; //市

        code := copy(code, 1, 2) + '0000';
        index := codeTst.IndexOf(code);
        if index = -1 then
        begin
            Result := st;
            exit;
        end;
        st := infoTst[index] + st; //省
        Result := st;



    end;

var
    YLYear, YLMonth, YlDay, id, sex, code: string;
    E: integer;
    St: string;

begin


    e := Length(identitycode);
    if (e <> 18) or (e <> 15) then result := '';
    if (e = 18) then
    begin
        YLYear := copy(identitycode, 7, 4);
        YlMonth := copy(identitycode, 11, 2);
        YLday := copy(identitycode, 13, 2);
        id := copy(identitycode, 18,1);
    end;
    if (e = 15) then
    begin
        YLYear := '19' + copy(identitycode, 7, 2);
        YlMonth := copy(identitycode, 9, 2);
        YLday := copy(identitycode, 11, 2);
        id := copy(identitycode, 15, 1);
    end;
    st := '';
    if IsDate(YlYear, YlMonth, Ylday) then
    begin
        st := YLYear + '年' + YlMonth + '月' + YLday + '日生'
    end;
    code := copy(identitycode, 1, 6);
    st := getdetailedFromCode(code) + ':' + st;


    if (StrToInt(id) mod 2 = 1) then
    begin
        sex := '男';
    end
    else
    begin
        sex := '女';
    end;
    st := st + ':' + sex + '性!' + Trim(IntToStr(e)) + '位证号!';
    Result := st;



end;

procedure TForm1.Button1Click(Sender: TObject);
var
    i, num: integer;
    code, info: string;
begin


    codeInfoTst := Tstringlist.Create;
    CodeTst := Tstringlist.Create;
    infotst := Tstringlist.Create;
    try
        codeInfoTst.LoadFromFile('c:code.txt');
        //分解代码地址信息
        num := Codeinfotst.Count;
        for i := 0 to num - 1 do
        begin
            code := copy(Codeinfotst[i], 1, 6);
            Info := copy(Codeinfotst[i], 8, length(Codeinfotst[i]) - 7);
            codetst.Add(code);
            infotst.Add(info);

        end;
        showmessage(identityInfo('530101700205379'));

    finally
        codeTst.Free;
        infotst.Free;
        CodeinfoTst.Free;
    end;



end;

end.
code.txt内容如下,你可以扩展
150000,内蒙古自治区
150100,呼和浩特市
150101,呼和浩特市辖区
150105,郊区
150121,土默特左旗
150122,托克托县
150123,武川县
150124,和林格尔县
150125,清水河县
150200,包头市
150201,包头市辖区
150205,石拐矿区
150206,白云矿 区
150207,郊区
150221,土默特右旗
150222,固阳县
150223,达尔罕茂明安旗
150300,乌海市
150302,海勃湾区
150303,海南区
150304,乌达区
150400,赤峰市
150402,红山区
150403,元宝山区
150404,松山区
150421,阿鲁科尔沁旗
150422,巴林左旗
150423,巴林右旗
150424,林西县
150425,克什克腾旗
150426,翁牛特旗
150428,喀喇沁旗
150429,宁城县
150430,敖汉旗
152100,呼伦贝尔盟
152101,海拉尔市
152102,满洲里市
152103,扎兰屯市
152104,牙克石市
152122,阿荣旗
152123,莫力达瓦旗
152125,额尔古纳右旗
152126,额尔古纳左旗
152127,鄂伦春旗
152128,鄂温克旗
152129,新巴尔虎右旗
152130,新巴尔虎左旗
152131,陈巴尔虎旗
152200,兴安盟
152201,乌兰浩特市
152202,阿尔山市
152221,科尔沁右翼前旗
152222,科尔沁右翼中旗
152223,扎赉特旗
152224,突泉县
152300,哲里木盟
152301,通辽市
152302,霍林郭勒市
152322,科尔沁左翼中旗
152323,科尔沁左翼后旗
152324,开鲁县
152325,库伦旗
152326,奈曼旗
152327,扎鲁特旗
152500,锡林郭勒盟
152501,二连浩特市
152502,锡林浩特市
152522,阿巴嘎旗
152523,苏尼特左旗
152524,苏尼特右旗
152525,东乌珠穆沁旗
152526,西乌珠穆沁旗
152527,太仆寺旗
152528,镶黄旗
152529,正镶白旗
152530,正兰旗
152531,多伦县
152600,乌兰察布盟
152601,集宁市
152624,卓资县
152625,化德县
152626,商都县
152627,兴和县
152628,丰镇县
152629,凉城县
152630,察哈尔右翼前旗
152631,察哈尔右翼中旗
152632,察哈尔右翼后旗
152634,四子王旗
152700,伊克昭盟
152701,东胜市
152722,达拉特旗
152723,准格尔旗
152724,鄂托克前旗
152725,鄂托克旗
152726,杭锦旗
152727,乌审旗
152728,伊金霍洛旗
152800,巴彦淖尔盟
152801,临河市
152822,五原县
152823,磴口县
152824,乌拉特前旗
152825,乌拉特中旗
152826,乌拉特后旗
152827,杭锦后旗
152900,阿拉善盟
152921,阿拉善左旗
152922,阿拉善右旗
152923,额济纳旗
153000,黑龙江
153100,吉林
153200,辽宁
153300,河北
153400,山西
153500,陕西
153600,甘肃
153700,宁夏
153800,接边调整
500000,重庆市
500200,重庆直属
500201,渝中区
500211,江北区
500212,沙坪坝区
500213,九龙坡区
500214,南岸区
500215,北碚区
500216,万盛区
500217,双桥区
500221,长寿县
500222,巴南区
500223,綦江县
500224,渝北区
500225,江津市
500226,合川市
500227,潼南县
500228,铜梁县
500229,永川市
500230,大足县
500231,荣昌县
500232,璧山县
501200,重庆万州移民开发区
501202,龙宝
501203,天城
501204,五桥
501222,开县
501223,忠县
501224,梁平县
501225,云阳县
501226,奉节县
501227,巫山县
501228,巫溪县
501229,城口县
502300,涪陵市
502311,涪陵区
502322,垫江县
502323,南川市
502324,丰都县
502326,武隆县
503500,黔江地区
503521,石柱县国土局
503522,秀山县
503523,黔江县
503524,酉阳县国土局
503525,彭水县国土局
520000,贵州省
520100,贵阳市
520102,南明区
520103,云岩区
520104,小河镇
520111,花溪区
520112,乌当区
520113,白云区
520114,修文县
520115,开阳县
520116,息烽县
520117,清镇市
522100,遵义市
522101,红花岗区
522102,赤水市
522103,仁怀市
522121,遵义县
522122,桐梓县
522123,绥阳县
522124,正安县
522125,道真县
522126,务川县
522127,凤冈县
522128,湄潭县
522129,余庆县
522132,习水县
522200,铜仁地区
522221,铜仁市
522222,江口县
522223,玉屏县
522224,石阡县
522225,思南县
522226,印江县
522227,德江县
522228,沿河县
522229,松桃县
522230,万山特区
522300,黔西南州
522301,兴义市
522322,兴仁县
522323,普安县
522324,晴隆县
522325,贞丰县
522326,望谟县
522327,册亨县
522328,安龙县
522400,毕节地区
522401,毕节市
522422,大方县
522423,黔西县
522424,金沙县
522425,织金县
522426,纳雍县
522427,威宁县
522428,赫章县
522500,安顺地区
522501,安顺市
522526,平坝县
522527,普定县
522528,关岭县
522529,镇宁县
522530,紫云县
522600,黔东南州
522601,凯里市
522622,黄平县
522623,施秉县
522624,三穗县
522625,镇远县
522626,岑巩县
522627,天柱县
522628,锦屏县
522629,剑河县
522630,台江县
522631,黎平县
522632,榕江县
522633,从江县
522634,雷山县
522635,麻江县
522636,丹寨县
522700,黔南州
522701,都匀市
522722,荔波县
522723,贵定县
522724,福泉市
522725,瓮安县
522726,独山县
522727,平塘县
522728,罗甸县
522729,长顺县
522730,龙里县
522731,惠水县
522732,三都县
522800,六盘水市
522821,六枝特区
522822,盘县特区
522823,水城县
522824,钟山区
540000,西藏自治区
540100,拉萨市
540120,城关区
540121,林周县
540122,当雄县
540123,尼木县
540124,曲水县
540125,堆龙德庆
540126,达孜县
540127,墨竹工卡县
542100,昌都地区
542121,昌都县
542122,江达县
542123,贡觉县
542124,类乌齐县
542125,丁青县
542126,察雅县
542127,八宿县
542128,左贡县
542129,芒康县
542132,洛隆县
542133,边坝县
542200,山南地区
542221,乃东县
542222,扎朗县
542223,贡嘎县
542224,桑日县
542225,琼结县
542226,曲松县
542227,措美县
542228,洛扎县
542229,加查县
542231,隆子县
542232,错那县
542233,浪卡子县
542300,日喀则地区
542301,日喀则市
542322,南木林县
542323,江孜县
542324,定日县
542325,萨迦县
542326,拉孜县
542327,昂仁县
542328,谢通门县
542332,定结县
542333,仲巴县
542334,亚东县
542335,吉隆县
542336,聂拉木县
542337,萨嘎县
542338,岗巴县
542339,白朗县
542340,仁布县
542341,康马县
542400,那曲地区
542421,那曲县
542422,嘉黎县
542423,比如县
542424,聂荣县
542425,安多县
542426,申扎县
542427,索县
542428,班戈县
542429,巴青县
542431,文部办事处
542432,双湖办事处
542500,阿里地区
542521,普兰县
542522,札达县
542523,噶尔县
542524,日土县
542525,革吉县
542526,改则县
542527,措勤县
542600,林芝地区
542621,林芝县
542622,工布江达县
542623,米林县
542624,墨脱县
542625,波密县
542626,察隅县
542627,朗县
549900,接边(青)
620000,甘肃省
620100,兰州市
620102,城关区
620103,七里河
620104,西固区
620105,安宁区
620111,红古区
620121,永登县
620122,皋兰县
620123,榆中县
620200,嘉峪关市
620202,嘉峪关区
620300,金昌市
620302,金川区
620321,永昌县
620400,白银市
620402,白银区
620403,平川区
620421,靖远县
620422,会宁县
620423,景泰县
620500,天水市
620502,秦城区
620503,北道区
620521,清水县
620522,秦安县
620523,甘谷县
620524,武山县
620525,张川县
622100,酒泉地区
622101,玉,门,市
622102,酒,泉,市
622103,敦,煌,市
622123,金,塔,县
622124,肃,北,县
622125,阿克塞县
622126,安,西,县
622200,张掖地区
622201,张掖市
622222,肃南县
622223,民乐县
622224,临泽县
622225,高台县
622226,山丹县
622300,武威地区
622301,武威市
622322,民勤县
622323,古浪县
622326,天祝县
622400,定西地区
622421,定西县
622424,通渭县
622425,陇西县
622426,渭源县
622427,临洮县
622428,漳县
622429,岷县
622600,陇南地区
622621,武都县
622623,宕昌县
622624,成 县
622625,康 县
622626,文 县
622627,西和县
622628,礼 县
622629,两当县
622630,徽 县
622700,平凉地区
622701,平凉市
622722,泾川县
622723,灵台县
622724,崇信县
622725,华亭县
622726,庄浪县
622727,静宁县
622800,庆阳地区
622801,西峰市
622821,庆阳县
622822,环 县
622823,华池县
622824,合水县
622825,正宁县
622826,宁 县
622827,镇原县
622900,临夏州
622901,临夏市
622921,临夏县
622922,康乐县
622923,永靖县
622924,广河县
622925,和政县
622926,东乡县
622927,积石山
623000,甘南州
623021,临潭县
623022,卓尼县
623023,舟曲县
623024,迭部县
623025,玛曲县
623026,碌曲县
623027,夏河县
640000,宁夏自治区
640200,石嘴山市
640201,石嘴市辖区
640222,陶乐县
642100,吴忠市
642200,固原地区
642222,海原县
642223,西吉县
642224,隆德县
642225,泾源县
642226,彭阳县
640221,平罗县
642124,中宁县
642125,灵武市
642101,利通区
642127,同心县
642221,固原县
640100,银川市
642126,盐池县
642123,中卫县
640223,惠农县
642102,青铜峡市
640111,银川市郊区
640121,永宁县
640122,贺兰县
640101,城区
140000,山西省
140300,阳泉市
140500,晋城市
140600,朔州市
142700,运城地区
140601,朔州市辖
140603,平鲁区
140621,山阴县
140631,右玉县
140633,怀仁县
140626,应县
140400,长治市
140402,长治城区
140421,长治县
140422,潞城市
140423,襄垣县
140424,屯留县
140425,平顺县
140426,黎城县
140427,壶关县
140428,长子县
140429,武乡县
140430,沁 县
140431,沁源县
140411,长治郊区
142600,临汾地区
142628,安泽县
142636,汾西县
142629,浮山县
142627,古县
142625,洪洞县
142602,侯马市
142603,霍州市
142630,吉县
142632,蒲县
142621,曲沃县
142635,隰县
142631,乡宁县
142622,翼城县
142634,永和县
142633,大宁县
140523,高平县
140521,沁水县
140522,阳城县
140511,泽州县
142200,忻州地区
142201,忻州市
142222,定襄县
142223,五台县
142225,代县
142226,繁峙县
142229,神池县
142231,苛岚县
142232,河曲县
142230,五寨县
142234,偏关
142202,原平市
142300,吕梁地区
142321,汾阳市
142323,交城县
142327,柳林县
142322,文水县
142325,兴县
142330,方山县
142331,离石市
142301,孝义市
142601,临汾市
142623,襄汾县
140524,陵川县
140501,晋城市辖
142333,交口县
142332,中阳县
142329,岚县
142328,石楼县
142326,临县
142227,宁武县
140321,平定县
140302,阳泉城区
140303,阳泉矿区
140100,太原市
140103,北城区
140104,河西区
140105,小店区
140106,迎泽区
140107,杏花岭区
140108,尖草坪区
140109,万柏林区
140110,晋源区
140122,阳曲县
140123,娄烦县
140181,古交市
140102,南城区
140121,清徐县
140200,大同市
140202,大同城区
140203,大同矿区
140212,新荣区
140221,阳高县
140222,天镇县
140223,广灵县
140225,浑源县
140230,左支县
140232,大同县
140224,灵丘县
142400,晋中地区
142422,左权县
142401,榆次市
142402,介休市
142424,昔阳县
142429,太谷县
142430,祁 县
142431,平遥县
142433,灵石县
142427,寿阳县
142423,和顺
142421,榆社县
142725,万荣县
142727,稷山县
142728,河津市
142732,平陆县
142733,垣曲县
142723,芮城县
142722,永济市
142724,临猗县
142729,闻喜县
142730,夏 县
140322,盂 县
142731,绛 县
140211,大同南郊
142701,运城市
140311,阳泉郊区
140602,朔城区
142228,静乐县
142726,新绛县
142233,保德县
420000,湖北省
420700,鄂州市
420702,梁子区
420703,华容区
420704,鄂城区
423000,省农林系统
429000,省直辖行政单位
420800,荆门市
420881,钟祥市
420821,京山县
420802,东宝区
420803,沙洋
423021,五三农场
422801,恩施市
422802,利川市
422822,建始县
422823,巴东县
422826,咸丰县
422825,宣恩县
422827,来凤县
422800,恩施州
422828,鹤峰县
420100,武汉市
420103,江汉区
420104,桥口区
420105,汉阳区
420106,武昌区
420107,青山区
420121,蔡甸区
420114,东湖高新技术开发区
420115,武汉经济开发区
420112,东西湖区
420109,东湖管理分局
420124,新洲县
420123,黄陂区
420113,汉南区
420102,江岸区
420122,江夏区
420111,洪山区
420200,黄石市
420205,铁山区
420204,下陆区
420202,黄石港区
420203,石灰窑区
420281,大冶市
420222,阳新县
420500,宜昌市
420502,西陵区
420503,伍家岗区
420504,点军区
420505,猇亭区
420506,宜昌开发区
420507,草埠湖管理区
420521,宜昌县
420525,远安县
420526,兴山县
420527,秭归县
420528,长阳土家族自治县
420529,五峰土家族自治县
420581,宜都市
420582,当阳市
420583,枝江市
420600,襄樊市
420683,枣阳市
420607,高新技术开发区
420606,樊城区
420602,襄城区
420625,谷城县
420682,老河口
420684,宜城市
420608,汽车产业开发区
420626,保康县
420621,襄阳县
420900,孝感市
420902,孝南区
420921,孝昌县
420923,云梦县
420922,大悟县
420924,汉川市
420983,广水市
420981,应城市
420982,安 陆
421000,荆州市
421002,沙市
421087,松滋市
421083,洪湖市
421023,监利县
421022,公安县
421006,城南开发区
421081,石首市
421003,荆州区
421005,玉桥开发区
421004,江陵区
421100,黄冈市
421102,黄州区
421121,团风县
421122,红安县
421123,罗田县
421124,英山县
421125,浠水县
421126,蕲春县
421127,黄梅县
421181,麻城市
421182,武穴市
422300,咸宁地区
422302,赤壁市
422324,通城县
422326,通山县
422325,崇阳县
422301,咸宁市
422322,嘉鱼县
423022,沙洋监狱管理局
429001,随州市
429004,仙桃市
429005,潜江市
429006,天门市
429021,神农架
420300,十堰市
420302,茅箭区
420303,张湾区
420323,竹山县
420321,郧县
420381,丹江口市
420324,竹溪县
420322,郧西县
420325,房县
410000,河南省
410600,鹤壁市
410602,鹤山区
410603,山城区
410611,郊区
410621,浚县
410622,淇县
410700,新乡市
410702,红旗区
410703,新华区
410704,北站区
410711,郊 区
410721,新乡县
410724,获嘉县
410725,原阳县
410726,延津县
410727,封丘县
410728,长垣县
410781,卫辉市
410782,辉县市
410800,焦作市
410802,解放区
410803,中站区
410804,马村区
410811,山阳区
410821,修武
410822,博爱
410823,武陟
410824,沁阳
410825,温县
410826,孟州市
410900,濮阳市
410902,濮阳市区
410922,清丰县
410923,南乐县
410926,范县
410927,台前县
410928,濮阳县
411200,三门峡市
411202,湖滨区
411221,渑池县
411222,陕县
411223,灵宝市
411224,卢氏县
411281,义马市
412800,驻马店地区
412801,驻马店市
412821,确山县
412822,泌阳县
412823,遂平县
412824,西平县
412825,上蔡县
412826,汝南县
412827,平舆县
412828,新蔡县
412829,正阳县
410500,安阳市
410502,文峰区
410503,北关区
410504,铁西区
410511,郊 区
410522,安阳县
410523,汤阴县
410524,林州市
410526,滑 县
410527,内黄县
410200,开封市
410201,市辖区
410231,龙亭区
410232,鼓楼区
410233,顺河区
410234,南关区
410223,尉氏县
410211,郊区
410225,兰考县
410221,杞县
410224,开封县
410222,通许县
412700,周口地区
412725,鹿邑县
412723,商水县
412721,扶沟县
412722,西华县
412724,太康县
412726,郸城县
412727,淮阳县
412701,周口市
412729,项城市
412730,国营黄泛区农场
412728,沈丘县
410300,洛阳市
410326,汝阳县
410321,偃师市
410323,新安县
410324,栾川县
410304,廛河区
410308,开发区
410302,老城区
410311,郊区
410325,嵩县
410305,涧西区
410328,洛宁县
410303,西工区
410327,宜阳县
410329,伊川县
410306,吉利区
410322,孟津县
411025,襄城县
411022,长葛市
411024,鄢陵县
411023,许昌县
411081,禹州市
410400,平顶山市
410427,白龟山水库
410402,新华区
410403,卫东区
410404,石龙区
410405,湛河区
410421,宝丰县
410422,叶县
410423,鲁山县
410425,郏县
410481,舞钢市
410482,汝州市
412300,商丘市
412302,市辖区
412325,睢县
412321,虞城县
412322,睢阳区
412301,梁园区
412326,夏邑县
412931,新野县
412932,桐柏县
412933,规划控制区
412929,唐河县
412903,宛城区
412926,内乡县
411100,漯河市
411121,舞阳县
411123,郾城县
411122,临颍县
411102,源汇区
510000,四川省
510100,成都市
510104,成都市锦江区
510105,青羊区
510106,金牛区
510107,武侯区
510108,成华区
510109,成都高新区
510112,龙泉驿区
510113,青白江区
510121,金堂县
510122,双流县
510123,温江县
511124,井研县
511126,夹江县
511129,沐川县
511132,峨边县
511133,马边县
513200,阿坝州
513221,汶川县
513222,理县
513223,茂县
513224,松潘县
513225,南坪县
513226,金川县
513227,小金县
513228,黑水县
513229,马尔康县
513230,壤塘县
513231,阿坝县
513232,若尔盖县
513233,红原县
510900,遂宁市
510923,大英县
510922,射洪县
510902,市中区
510921,篷溪县
513326,道孚县
513327,炉霍县
513328,甘孜县
513329,新龙县
513330,德格县
513331,白玉县
513332,石渠县
513333,色达县
513334,理塘县
513335,巴塘县
513336,乡城县
513337,稻城县
513338,得荣县
513321,康定县
513600,广安市
513601,华蓥市
513621,岳池县
513622,广安县
513623,武胜县
513624,邻水县
510800,广元市
510824,苍溪县
510802,市中区
510812,朝天区
513125,石棉县
513123,荥经县
513124,汉源县
513101,雅安市
513128,宝兴县
514100,资阳地区
514126,资阳市
514127,简阳市
514122,乐至县
514123,安岳县
510700,绵阳市
510703,涪城区
510704,游仙区
510781,江油市
510726,北川县
510723,盐亭县
510727,平武县
510725,梓潼县
510722,三台县
510724,安 县
513800,眉山地区
513821,眉山县
513822,仁寿县
513823,彭山县
513436,美姑县
513437,雷波县
513425,会理县
513401,西昌市
514200,42市
510400,攀枝花市
510413,攀枝花市西区
510411,仁和区
510412,攀枝花市东区
510421,米易县
510422,盐边县
513700,巴中地区
513701,巴中市
513721,通江县
513722,南江县
513723,平昌县
510600,德阳市
510622,绵竹市
510625,什邡市
510626,罗江县
510627,27县
510628,28县
510629,29县
510630,30县
510623,中江县
610000,陕西省
610100,西安市
610103,碑林区
610104,莲湖区
610111,灞桥区
610112,未央区
610113,雁塔区
610114,阎良区
610121,长安县
610122,蓝田县
610123,临潼区
610124,周至县
610125,户县
610126,高陵县
610106,经济开发区
610127,高新技术产业开发区
610102,新城区
610200,铜川市
610202,城区
610222,宜君县
610203,郊区
610221,耀县
610300,宝鸡市
419000,济源市土地管理局
419003,03县
419004,04县
419001,01县
419002,02县
419005,05县
410100,郑州市
410125,登封市
410105,金水区
410124,巩义市
410103,二七区
410106,上街区
410121,荥阳市
410126,新密市
410102,中原区
410104,管城回族区
410111,高新区
410108,邙山区
410127,郑州市区
410112,经济开发区
410123,新郑市
410122,中牟县
411000,许昌市
411002,魏都区
412327,柘城县
412328,永城市
412324,宁陵县
412323,民权县
413000,信阳市
413023,平桥区
413024,潢川县
413028,罗山县
413027,商城县
413026,固始县
413025,光山县
413029,新县
413022,淮滨县
413021,息县
413001,师河区
412900,南阳市
412901,卧龙区
412902,邓州市
412921,南召县
412922,方城县
412923,西峡县
412925,镇平县
412927,淅川县
412928,社旗县
510124,郫县
510125,新都县
510126,彭州市
510129,大邑县
510130,邛崃市
510131,蒲江县
510132,新津县
510181,都江堰市
510184,崇州市
510500,泸州市
510502,江阳区
510503,龙马潭区
510521,泸县
510522,合江县
510523,纳溪区
510524,叙永县
510525,古蔺县
511100,乐山市
511102,市中区
511104,峨眉山市
511111,沙湾区
511112,五通桥区
511113,金口河区
511123,犍为县
513900,达州市
513930,渠县
513901,达川市
513921,达县
513929,大竹县
513924,万源市
513923,开江县
513922,宣汉县
512500,宜宾市
512530,长宁县
512533,珙县
512534,兴文县
512531,高县
512535,屏山县
512527,宜宾县
512529,江安县
512532,筠连县
512501,翠屏区
512528,南溪县
513300,甘孜州
513322,泸定县
513323,丹巴县
513324,九龙县
513325,雅江县
510823,剑阁县
510822,青川县
510811,元坝区
510821,旺苍县
511300,南充市
511302,顺庆区
511323,蓬安县
511381,阆中市
511304,嘉陵区
511324,仪陇县
511325,西充县
511303,高坪区
511321,南部县
511322,营山县
511000,内江市
511021,东兴区
511028,隆昌县
511025,资中县
511002,市中区
511024,威远县
513100,雅安地区
513127,芦山县
513122,名山县
513126,天全县
513824,洪雅县
513825,丹棱县
513826,青神县
510300,自贡市
510302,自流井区
510303,贡井区
510321,荣县
510322,富顺县
510311,沿滩区
510304,大安区
513400,凉山州
513422,木里县
513423,盐源县
513424,德昌县
513426,会东县
513427,宁南县
513428,普格县
513429,布拖县
513430,金阳县
513431,昭觉县
513432,喜德县
513433,冕宁县
513434,越西县
513435,甘洛县
510631,31县
510632,32县
510633,33县
510634,34县
510635,35县
510636,36县
510637,37县
510638,38县
510639,39县
510640,40县
510641,341县
510602,旌阳区
510642,42县
510643,43县
510644,44县
510645,45县
510646,46县
510647,47县
510648,48县
510649,49县
510650,50县
510651,51县
510652,52县
510601,广汉市
610321,宝鸡县
610331,太白县
610324,扶风县
610330,凤 县
610303,金台区
610329,麟游县
610323,岐山县
610327,陇 县
610326,眉县
610322,凤翔县
610302,渭滨区
610328,千阳县
610400,咸阳市
610424,乾县
610431,武功县
610422,三原县
610421,兴平市
610426,永寿县
610427,彬县
610429,旬邑县
610430,淳化县
610425,礼泉县
610402,秦都区
610423,泾阳县
610428,长武县
610404,渭城区
612100,渭南市
612102,韩城
612128,蒲城
612130,白水
612129,澄县
612127,大荔
612101,临渭
612133,富平
612132,合阳
612103,华阴
612124,华县
612126,潼关
612700,榆林地区
612701,榆林市
612722,神木县
612723,府谷县
612725,靖边县
612728,米脂县
612729,佳县
612730,吴堡县
612731,清涧县
612732,子洲县
612326,宁强县
612323,洋县
612322,城固县
612324,西乡县
612328,镇巴县
612330,佛坪县
612301,汉台区
612500,商洛地区
612526,镇安县
612524,商南县
612523,丹凤县
612522,洛南县
612527,柞水县
612525,山阳县
612501,商州市
612400,安康地区
612429,旬阳县
612425,紫阳县
612401,安康市
612422,汉阴县
612423,石泉县
612424,宁陕县
612427,平利县
612428,镇坪县
652322,米泉市
652323,呼图壁县
652324,马纳斯县
652325,奇台县土地管理局
652326,阜康市
652327,吉木萨尔县
652328,木垒县
652800,巴音郭楞蒙古自州
652801,库尔勒市
652824,若羌县
652829,博湖县
652828,和硕县
652827,和静县
652823,尉犁县
652822,轮台县
652826,焉耆县
652825,且末县
653100,喀什地区土地管理处
653101,喀什市
653121,疏附县
653122,疏勒县
653123,英吉沙县
653124,泽普县
653125,莎车县
653223,皮山县
653226,于田县
653221,和田县
653201,和田市
653227,民丰县
653225,策勒县
653224,洛浦县
654000,伊犁哈萨克自治州
654001,奎屯市土地局
654100,伊犁地区
654101,伊宁市
654125,新源县
654122,察布查尔县
654121,伊宁县
654127,特克斯县
654128,尼勒克县
652700,博州
652701,博乐市
652722,精河县
652723,温泉县
653000,克州
653001,阿图什市
654200,塔城地区
654201,塔城市
659103,农三师
630000,青海省
632600,果洛藏族自治州
632621,玛沁县
632622,班玛县
632623,甘德县
632624,达日县
632625,久治县
632626,玛多县
632700,玉树藏族自治州
632721,玉树县
632722,杂多县
632723,称多县
632724,治多县
632725,囊谦县
632726,曲麻莱县
632800,海西州
632801,格尔木市
632823,天峻县
632824,大柴旦行委
632825,冷湖行委
632826,茫崖行委
630100,西宁市
630101,城东区
632128,循化县
632200,海北藏族自治州
632221,门源回族自治县
632222,祁连县
632223,海晏县
632224,刚察县
632821,乌兰县
659108,农八师
659112,哈管局
659113,和管局
659114,建工师
659115,兵直
700000,新疆生产建设兵团
440402,珠海
440400,珠海地区
440000,广东
612724,横山县
612727,绥德县
612600,延安市
612601,宝塔区
612621,延长县
612622,延川县土地局
612623,子长县
612624,安塞县
612625,志丹县
612626,吴,旗,县
612627,甘泉县
612628,富县001
612629,洛川县
612630,宜川县土地局
612631,黄龙县
612632,黄陵县
612633,宝塔土地所
612634,延安市凤凰土地所
612635,延安市南市土地所
612300,汉中市
612327,略阳县
612321,南郑县
612329,留坝县
612325,勉县
612430,白河县
612426,岚皋县
610500,杨凌区
610501,01县
650000,新疆维吾尔自治区
652900,阿克苏地区
652925,新和县
652926,拜城县
652928,阿瓦提县
652901,阿克苏市
652929,柯坪县
652922,温宿县
652927,乌什县
652924,沙雅县
652923,库车县
650200,克拉玛依市
650205,乌尔禾区
650202,独山子区
650204,白碱滩区
650203,克拉玛依区
652100,吐鲁番地区
652122,鄯善县
652123,托克逊县
652300,昌吉州
653126,叶城县
653127,麦盖提县
653128,岳普湖县
653129,伽师县
653130,巴楚县
653131,塔什库尔干县
659000,省直辖单位
659001,石河子市
650100,乌鲁木齐市
650102,天山区
650103,沙依巴克区
650104,新市区
650105,水磨沟区
650106,头屯河区
650107,南山矿区
650108,东山区
650109,经济技术开发区
650121,乌鲁木齐县
652200,哈密地区
652222,巴里坤县
652223,伊吾县
652201,哈密市
653200,和田地区
653222,墨玉县
654223,沙湾县
654224,托里县
654221,额敏县
654225,裕民县
654226,和丰县
654222,乌苏市
654300,阿勒泰地区
654301,阿勒泰市
654321,布尔津县
654322,富蕴县
654323,福海县
654324,哈巴河县
654325,青河县
654326,吉木乃县
659100,新疆生产建设兵团
659101,农一师
659102,农二师
659104,农四师
659105,农五师
659106,农六师
659107,农七师
659109,新疆兵团农九师
659110,农十师
659111,乌管局
630102,城中区
630103,城西区
630104,城北区
630121,大通县
632300,黄南州
632323,泽库县
632324,河南县
632322,尖扎县
632321,同仁县
632500,海南藏族自治州
632521,共和县
632522,同德县
632524,兴海县
632525,贵南县
632523,贵德县
632802,001街道
632100,海东地区
632121,平安县
632122,民和回族土族自治县
632123,乐都县
632124,湟中县
632125,湟源县
632126,互助县
632127,化隆县
530000,云南省
530100,昆明市
530101,盘龙区
530102,五华区
530123,安宁市
530124,富民县
530125,宜良县
530127,嵩明县
530128,禄劝县
530129,滇池
530131,寻甸县
530111,官渡区
530112,西山区
530121,呈贡县
530122,晋宁县
530126,石林县
530200,东川市
530201,东川市辖区
530202,东川区
532100,昭通地区
532101,昭通市
532122,鲁甸县
532123,巧家县
532124,盐津县
532129,彝良县
532130,威信县
532227,师宗县
532228,陆良县
532233,会泽县
532234,沾益县
532323,牟定县
532324,南华县
532325,姚安县
532329,武定县
532331,禄丰县
532400,玉溪市
532401,红塔区
532424,通海县
532425,华宁县
532426,易门县
532502,开远市
532522,蒙自县
532527,泸西县
532528,元阳县
532125,大关县
532126,永善县
532127,绥江县
532128,镇雄县
532131,水富县
532200,曲靖市
532201,麒麟区
532223,马龙县
532224,宣威市
532225,富源县
532226,罗平县
532300,楚雄州
532301,楚雄市
532322,双柏县
532326,大姚县
532327,永仁县
532328,元谋县
532422,江川县
532423,澄江县
532427,峨山县
532428,新平县
532429,元江县
532500,红河州
532501,个旧市
532523,屏边县
532524,建水县
532525,石屏县
532526,弥勒县
532529,红河县
532530,金平县
532531,绿春县
532622,砚山县
532623,西畴县
532624,麻栗坡县
532700,思茅地区
532721,思茅市
532722,普洱县
532723,墨江县
532724,景谷县
532725,景东县
532726,镇沅县
532901,大理市
532922,漾濞县
532923,祥云县
532924,宾川县
532925,弥渡县
532926,南涧县
532927,巍山县
532928,永平县
532929,云龙县土地管理局
532930,洱源县
532931,云南省剑川县
532932,鹤庆县
533000,保山地区
533001,保山市
533024,龙陵县
533025,昌宁县
533123,盈江县
533124,陇川县
533125,瑞丽市
533200,丽江地区
533221,丽江县
533222,永胜县
533223,华坪县
533224,宁蒗县
533523,云县
533524,永德县
533525,镇康县
533526,双江县
533527,耿马县
532532,河口县
532600,文山州
532621,文山县
532625,马关县
532626,丘北县
532627,广南县
532628,富宁县
532727,江城县
532728,孟连县
532729,澜沧县
532730,西盟县
532800,版纳州
532801,景洪市
532822,勐海县
532823,勐腊县
532900,大理州
533022,施甸县
533023,腾冲县
533100,德宏州
533101,畹町市
533121,潞西县
533122,梁河县
533300,怒江州
533321,泸水县
533323,福贡县
533324,贡山县
533325,兰坪县
533400,迪庆州
533421,中甸县
533422,德钦县
533423,维西县
533500,临沧地区
533521,临沧县
533522,凤庆县
533528,沧源县
 

Posted in 软件开发 at January 21, 2010. by 傻猫 .    Views: 19315    No Comments

Delphi实现身份证号码15到18位升位算法

身份证号码15到18位升位算法Delphi实现
2000年写的一个函数,大家用得上的话可以看看:
function GetNewID(ID: string): string;
const
 W: array[1..18] of Integer = (7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);
 A: array[0..10] of Char = ('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
var
 i, j, S: integer;
 NewID: string;
begin
 if Length(ID) <> 15 then
   result := ''
 else
 begin
   NewID := ID;
   Insert('19', NewID, 7);
   S := 0;
   try
     for i := 1 to 17 do
     begin
       j := StrToInt(NewID[i]) * W[i];
       S := S + j;
     end;
   except
     result := '';
     exit;
   end;
   S := S mod 11;
   Result := NewID + A[S];
 end;
end;
 

Posted in 软件开发 at January 21, 2010. by 傻猫 .    Views: 3117    No Comments

Delphi写的验证身份证号有效性函数

function ValidatePID(const APID: string): string;
  {内部函数,取身份证号校验位,最后一位,对18位有效}
  function GetVerifyBit(sIdentityNum: string): Char;
  var
    nNum: Integer;
  begin
    Result := #0;
    nNum := StrToInt(sIdentityNum[1]) * 7 +
            StrToInt(sIdentityNum[2]) * 9 +
            StrToInt(sIdentityNum[3]) * 10 +
            StrToInt(sIdentityNum[4]) * 5 +
            StrToInt(sIdentityNum[5]) * 8 +
            StrToInt(sIdentityNum[6]) * 4 +
            StrToInt(sIdentityNum[7]) * 2 +
            StrToInt(sIdentityNum[8]) * 1 +
            StrToInt(sIdentityNum[9]) * 6 +
            StrToInt(sIdentityNum[10]) * 3 +
            StrToInt(sIdentityNum[11]) * 7 +
            StrToInt(sIdentityNum[12]) * 9 +
            StrToInt(sIdentityNum[13]) * 10 +
            StrToInt(sIdentityNum[14]) * 5 +
            StrToInt(sIdentityNum[15]) * 8 +
            StrToInt(sIdentityNum[16]) * 4 +
            StrToInt(sIdentityNum[17]) * 2;
    nNum := nNum mod 11;
    case nNum of
      0: Result := '1';
      1: Result := '0';
      2: Result := 'X';
      3: Result := '9';
      4: Result := '8';
      5: Result := '7';
      6: Result := '6';
      7: Result := '5';
      8: Result := '4';
      9: Result := '3';
      10: Result := '2';
    end;
  end;
var
  L : Integer;
  sCentury : string;
  sYear2Bit : string;
  sMonth : string;
  sDate : string;
  iCentury : Integer;
  iMonth : Integer;
  iDate : Integer;
  CRCFact : string;//18位证号的实际值
  CRCTh : string; //18位证号的理论值
  FebDayAmt: Byte;//2月天数
begin
  L := Length(APID);
  if (L in [15, 18]) = False then
  begin
     Result := Format('身份证号不是15位或18位(%0:s, 实际位数:%1:d)', [APID, L]);
     Exit;
  end;
  CRCFact := '';
  if L = 18 then
  begin
     sCentury := Copy(APID, 7, 2);
     iCentury := StrToInt(sCentury);
     if (iCentury in [18..20]) = False then
     begin
        Result := Format('身份证号码无效:18位证号的年份前两位必须在18-20之间(%0:S)', [sCentury]);
        Exit;
     end;
     sYear2Bit := Copy(APID, 9, 2);
     sMonth := Copy(APID, 11, 2);
     sDate := Copy(APID, 13, 2);
     CRCFact := Copy(APID, 18, 1);
  end else
  begin
     sCentury := '19';
     sYear2Bit := Copy(APID, 7, 2);
     sMonth := Copy(APID, 9, 2);
     sDate := Copy(APID, 11, 2);
  end;
  iMonth := StrToInt(sMonth);
  iDate := StrToInt(sDate);
  if (iMonth in [01..12]) = False then
  begin
     Result := Format('身份证号码无效:月份必须在01-12之间(%0:s)', [sMonth]);
     Exit;
  end;
  if (iMonth in [1, 3, 5, 7, 8, 10, 12]) then
  begin
     if (iDate in [01..31]) = False then
     begin
        Result := Format('身份证号码无效:日期无效,不能为零或超出当月最大值(%0:s)', [sDate]);
        Exit;
     end;
  end;
  if (iMonth in [4, 6, 9, 11]) then
  begin
     if (iDate in [01..30]) = False then
     begin
        Result := Format('身份证号码无效:日期无效,不能为零或超出当月最大值(%0:s)', [sDate]);
        Exit;
     end;
  end;
  if IsLeapYear(StrToInt(sCentury + sYear2Bit)) = True then
  begin
     FebDayAmt := 29;
  end else
  begin
     FebDayAmt := 28;
  end;
  if (iMonth in [2]) then
  begin
     if (iDate in [01..FebDayAmt]) = False then
     begin
        Result := Format('身份证号码无效:日期无效,不能为零或超出当月最大值(%0:s)', [sDate]);
        Exit;
     end;
  end;
  if CRCFact <> '' then
  begin
     CRCTh := GetVerifyBit(APID);
     if CRCFact <> CRCTh then
     begin
        Result := Format('身份证号码无效:校验位(第18位)错:(%0:s)', [APID]);
        Exit;
     end;
  end;
end;

本文来自Delphi之窗,原文地址:http://www.52delphi.com
 

Posted in 软件开发 at January 21, 2010. by 傻猫 .    Views: 5769    No Comments

“史上最贵的网站出炉”

“中国工会网网站改版670万元”,“孔子学院网站运营服务3520万元”。
最近两天,财政部网站上公布的两则中直机构的中标公告引来网民围观。做个网站动辄就几百万元的成本支出,让“无比惊诧”的网民惊呼“做个网站好值钱”。

  “史上最贵网站出炉”

  最先被围观的是财政部网站上招标编号为T C 099R 72的“中国工会网扩建项目一期工程(网站改版、内容管理、站内检索、统计分析)”的中标公告。根据公告,本次招标的成标结果确定于2009年12月25日,成交结果则高达670万元。

  “史上最贵的网站出炉”,网友“lcheng”在一家论坛上发帖说。而在凯迪论坛上,另一位网友干脆以“无比惊诧”来描述自己的感受。

  有网民一度反对认为,如此高的招标价格很可能包含了网站运行所需要的服务器、路由器等硬件设备,但记者发现,“中国工会网扩建项目一期工程”事 实上还进行过一次专门的硬件招标,其项目编号为ZC-A ZB09085,中标者为两家供应商,中标金额总计超过1200万元。

  除了中标金额,成交供应商“北京中软宏大信息技术有限公司”的资质也遭到部分网民的质疑。名为“幼学笔记”的博客上,博主称自己特意研究了这家 “有能力做670万元‘大项目’的公司”,然而他发现,原以为“信息建设自然应该很牛”的企业的官方网站,居然只能在微软的IE浏览器下正常显示,当使用 火狐浏览器打开时,“乱成一团,完全不可用”。

  网站改个版、做做统计分析,竟然要上百万元的花费,很多跟帖的网民纷纷替采购人“中国工会网络中心”感到不值。

0723380192089391.jpg

  网站建设 “兄弟”中标

  不过,很快有网民发现,“中国工会网络中心”的这次招标显然还不是“史上最贵的”,因为同样出现在财政部网站中标公告中的“网络孔子学院网站运 营服务项目(招标编号:CEIECZB01-09JX033)”,第1包的定标日期是2009年12月15日,中标金额则高达3520万元。

  根据中标公告,这个名为网络孔子学院网站运营服务项目的采购项目,采购人为国家汉办(孔子学院总部),中标供应商为五洲汉风网络科技(北京)有限公司。

  除了高达数千万元的中标金额,中标供应商也引起了网民的注意。有网民指出,该公司是国家汉办的直属企业。记者在网络上搜索后发现,虽然公司尚无 官方网站,但国家汉办官方网站在进行所属机构介绍时明确提到,其十一个组成机构其中之一就是“五洲汉风教育科技(北京)有限公司”。而《中华人民共和国政 府采购法》第十二条规定,在政府采购活动中,采购人员及相关人员与供应商有利害关系的,必须回避。

  “下属网站招标,直属机构中标”,这也让网民感慨,“怪不得孔子这么牛呢”。

《南方都市报》

Posted in 杂七杂八 at January 21, 2010. by 傻猫 .    Views: 2111    No Comments

魅族M8手机QQ正式发布

经过多方努力,魅族M8 手机QQ终于破茧成蝶,于今天正式发布。

此次发布的QQ cab安装包适用于魅族官方发布的0.9.3.9和0.9.3.18正式版老UI固件。

使用测试版新UI固件的用户请关注稍后发布的测试版新UI固件,其中将会预装相应版本的QQ软件,敬请期待。

感谢广大魅友长期以来的支持与理解,谢谢大家!

QQ for Meizu 1.0

版本:V1.0

更新时间:2010-1-18

适用机型:M8

适用固件:0.9.3.9与0.9.3.18

软件大小:2.64 MB

作者:MEIZU

下载1 下载2 下载3

Posted in 杂七杂八 at January 18, 2010. by 傻猫 .    Views: 2226    1 Comment

使用CSS截取文字

截字是一个很恶心的问题。为了照顾表现上的需要,通常需要把过长的句子,比如一个列表中的新闻标题,截短。 通常这由程序员使用后台技术(各种流行的语言,PHP, JSP等)或者前台技术(JavaScript)来处理。我个人倾向于使用前台技术,因为这对提高网页的亲和力(accessibility)有好处。在非桌面型的浏览器中,用户可以更方便的掌握信息完整性。 根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取总结出更多更好的经验!

  text-overflow是CSS3的一个属性(property),它可以截短过长的字符串,并依据值(value)来决定被截掉部分使用何种方式展现。目前,IE已经实现对其的支持,Opera也有了私有属性(-o-text-overflow)对其支持,Firefox似乎落后一步……支持的两者都可使用ellipsis 值,把截掉部分替代成省略号(即ellipsis)。 根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取总结出更多更好的经验!

  所以,你要做的只是,把需要截字的元素定好宽度,和overflow一起使用,即可实现效果。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.content {
width:100px;
border:red 1px solid;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;/*以省略号替代截除部分*/
}
-->
</style>
</head>

<body>
<div class="content">此处显示   class "content" 的内容</div>
</body>
</html>

Posted in Web开发 at January 17, 2010. by 傻猫 .    Views: 3200    6 Comments