亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? commonuse.pas

?? Delphi的很有用的常用的方法和函數(shù)列表.
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    iYear:=START_YEAR-1;
    if iSpanDays<19 then
    begin
      iMonth:=11;
      iDay:=11+Word(iSpanDays);
    end
    else
    begin
      iMonth:=12;
      iDay:=Word(iSpanDays)-18;
    end;
    Exit;
  end;
  //下面從陰歷1901年正月初一算起
  iSpanDays:=iSpanDays-49;
  iYear:=START_YEAR;
  iMonth:=1;
  iDay:=1;
  //計(jì)算年
  tmp:=LunarYearDays(iYear);
  while iSpanDays>=tmp do
  begin
    iSpanDays:=iSpanDays-tmp;
    Inc(iYear);
    tmp:=LunarYearDays(iYear);
  end;
  //計(jì)算月
  tmp:=LoWord(LunarMonthDays(iYear,iMonth));
  while iSpanDays>=tmp do
  begin
    iSpanDays:=iSpanDays-tmp;
    if iMonth=GetLeapMonth(iYear) then
    begin
      tmp:=HiWord(LunarMonthDays(iYear,iMonth));
      if iSpanDays<tmp then
        Break;
      iSpanDays:=iSpanDays-tmp;
    end;
    Inc(iMonth);
    tmp:=LoWord(LunarMonthDays(iYear,iMonth));
  end;
  //計(jì)算日
  iDay:=iDay+Word(iSpanDays);
end;

function l_GetLunarHolDay(iYear,iMonth,iDay:Integer):Integer;
var
  Flag:Byte;
  Day:Integer;
begin
  Flag:=gLunarHolDay[(iYear-START_YEAR)*12+iMonth-1];
  if iDay<15 then
    Day:=15-((Flag shr 4) and $0f)
  else
    Day:=(Flag and $0f)+15;
  if iDay=Day then
    if iDay>15 then
      Result:=(iMonth-1)*2+2
    else
      Result:=(iMonth-1)*2+1
  else
    Result:=0;
end;

function GetLunarDateString(const InDate: TDateTime): String;
var
  sYear, sMonth, sDay: Integer;
begin
  GetLunarDate(InDate, sYear, sMonth, sDay);
  Result := Trim(FormatLunarYear(sYear)) + Trim(FormatMonth(sMonth)) + Trim(FormatLunarDay(sDay)) + GetLunarHolDay(InDate);
end;

function SfzOldIDToNewID(ID: String): String;
var
  i,SfzXy:Integer;
  XYM:String;
  a:array[0..17] of string;
begin
  a[0]:='0';
  a[1]:='7';
  a[2]:='9';
  a[3]:='10';
  a[4]:='5';
  a[5]:='8';
  a[6]:='4';
  a[7]:='2';
  a[8]:='1';
  a[9]:='6';
  a[10]:='3';
  a[11]:='7';
  a[12]:='9';
  a[13]:='10';
  a[14]:='5';
  a[15]:='8';
  a[16]:='4';
  a[17]:='2';
  SfzXy:=0;
  for i:=1 to 17 do
    SfzXy:=SfzXy+StrToInt(Copy(ID,i,1))*strtoInt(a[i]);
  Case (SfzXy Mod 11) of
    0: XYM :='1';
    1: XYM :='0';
    2: XYM :='X';
    3: XYM :='9';
    4: XYM :='8';
    5: XYM :='7';
    6: XYM :='6';
    7: XYM :='5';
    8: XYM :='4';
    9: XYM :='3';
    10:XYM :='2';
  end;
  Result:=XYM;
end;

function SFZ15to18(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;

function Base64Encode(const s: string): string;
var
  s4: string;
  i, j, k: integer;
  b: byte;
const
  Base64: string = '23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz~#%&*+-';
begin
  Result := '';
  SetLength(s4, 4);
  b := 0;
  i := 1;
  j := 2;
  k := 2;
  while i <= length(s) do begin
    b := b or ((ord(s[i]) and $C0) shr k);
    inc(k,2);
    s4[j] := Base64[(ord(s[i]) and $3F)+1];
    inc(i);
    inc(j);
    if j > 4 then begin
      s4[1] := Base64[b + 1];
      b := 0;
      j := 2;
      k := 2;
      Result := Result + s4;
    end;
  end;
  if j <> 2 then begin // Flush data in s4.
    s4[j] := '.';
    s4[1] := Base64[b + 1];
    Result := Result + s4;
    SetLength(Result, Length(Result) - (4 - j));
  end else
    Result := Result + '.';
end;

function Base64Decode(const s: string): string;
var
  i, j, k: integer;
  b: byte;
const
  UnBase64: array[0..255] of byte =
    (128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //0-15
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //16-31
     128,128,128, 58,128, 59, 60,128, 128,128, 61, 62,128, 63,128,128, //32-47
     128,128, 0, 1, 2, 3, 4, 5, 6, 7,128,128,128,128,128,128, //48-63
     128, 8, 9, 10, 11, 12, 13, 14, 15,128, 16, 17, 18, 19, 20,128, //64-79
     21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,128,128,128,128,128, //80-95
     128, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,128, 43, 44, 45, //96-111
     46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,128,128,128, 57,128, //112-127
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //128-143
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //144-159
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //160-175
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //176-191
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //192-207
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //208-223
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128, //224-239
     128,128,128,128,128,128,128,128, 128,128,128,128,128,128,128,128); //240-255
begin
  Result := '';
  b := 0;
  i := 1;
  j := 0;
  while (i <= length(s)) and (s[i] <> '.') do begin
    if j = 0 then begin
      b := UnBase64[ord(s[i])];
      k := 2;
    end else begin
      Result := Result + chr(UnBase64[ord(s[i])] or ((b shl k) and $C0));
      inc(k, 2);
    end;
    inc(j);
    j := j and 3;
    inc(i);
  end;
end;

function Base64ToString(const Value : string): string;
var
 x, y, n, l: Integer;
 d: array[0..3] of Byte;
 Table : string;
begin
 Table :=
   #$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$3E +#$40
   +#$40 +#$40 +#$3F +#$34 +#$35 +#$36 +#$37 +#$38 +#$39 +#$3A +#$3B +#$3C
   +#$3D +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$00 +#$01 +#$02 +#$03
   +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A +#$0B +#$0C +#$0D +#$0E +#$0F
   +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18 +#$19 +#$40 +#$40
   +#$40 +#$40 +#$40 +#$40 +#$1A +#$1B +#$1C +#$1D +#$1E +#$1F +#$20 +#$21
   +#$22 +#$23 +#$24 +#$25 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D
   +#$2E +#$2F +#$30 +#$31 +#$32 +#$33 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;
 SetLength(Result, Length(Value));
 x := 1;
 l := 1;
 while x < Length(Value) do
 begin
   for n := 0 to 3 do
   begin
     if x > Length(Value) then
       d[n] := 64
     else
     begin
       y := Ord(Value[x]);
       if (y < 33) or (y > 127) then
         d[n] := 64
       else
         d[n] := Ord(Table[y - 32]);
     end;
     Inc(x);
   end;
   Result[l] := Char((D[0] and $3F) shl 2 + (D[1] and $30) shr 4);
   Inc(l);
   if d[2] <> 64 then
   begin
     Result[l] := Char((D[1] and $0F) shl 4 + (D[2] and $3C) shr 2);
     Inc(l);
     if d[3] <> 64 then
     begin
       Result[l] := Char((D[2] and $03) shl 6 + (D[3] and $3F));
       Inc(l);
     end;
   end;
 end;
 Dec(l);
 SetLength(Result, l);
end;

function StringToBase64(const Value: string): string;
var
 c: Byte;
 n, l: Integer;
 Count: Integer;
 DOut: array[0..3] of Byte;
 Table : string;
begin
 Table :=
   'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';

 setlength(Result, ((Length(Value) + 2) div 3) * 4);
 l := 1;
 Count := 1;
 while Count <= Length(Value) do
 begin
   c := Ord(Value[Count]);
   Inc(Count);
   DOut[0] := (c and $FC) shr 2;
   DOut[1] := (c and $03) shl 4;
   if Count <= Length(Value) then
   begin
     c := Ord(Value[Count]);
     Inc(Count);
     DOut[1] := DOut[1] + (c and $F0) shr 4;
     DOut[2] := (c and $0F) shl 2;
     if Count <= Length(Value) then
     begin
       c := Ord(Value[Count]);
       Inc(Count);
       DOut[2] := DOut[2] + (c and $C0) shr 6;
       DOut[3] := (c and $3F);
     end
     else
     begin
       DOut[3] := $40;
     end;
   end
   else
   begin
     DOut[2] := $40;
     DOut[3] := $40;
   end;
   for n := 0 to 3 do
   begin
     Result[l] := Table[DOut[n] + 1];
     Inc(l);
   end;
 end;
end;

function GetTitle(const Value: string): string;
var
 iPos: integer;
begin
 Result := Value;
 if Copy(Value, 1, 2) <> '=?' then exit;
 //'?B?'前面的都要去掉
 iPos := Pos('?B?', Value);
 Inc(iPos, 3);
 //最后的'?='也要去掉
 Result := Copy(Value, iPos, Length(Value) - iPos - 1);
 Result := Base64ToString(Result);
end;

function GetDirectorySize(const ADirectory: string): Integer;
var
  Dir: TSearchRec;
  Ret: integer;
  Path: string;
begin
  Result := 0;
  Path := ExtractFilePath(ADirectory);
  Ret := Sysutils.FindFirst(ADirectory, faAnyFile, Dir);
  if Ret <> NO_ERROR then
    exit;
  try
    while ret=NO_ERROR do begin
      inc(Result, Dir.Size);
      if (Dir.Attr in [faDirectory]) and (Dir.Name[1] <> '.') then
        Inc(Result, GetDirectorySize(Path + Dir.Name + '\*.*'));
      Ret := Sysutils.FindNext(Dir);
    end;
  finally
    Sysutils.FindClose(Dir);
  end;
end;

function EmptyDirectory(const TheDirectory :String ; const Recursive : Boolean) : Boolean;
var
  SearchRec : TSearchRec;
  Res : Integer;
begin
  Result := False;
  //TheDirectory := NormalDir(TheDirectory);
  Res := FindFirst(TheDirectory + '*.*', faAnyFile, SearchRec);
  try
    while Res = 0 do begin
      if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then begin
        if ((SearchRec.Attr and faDirectory) > 0) and Recursive then begin
          EmptyDirectory(TheDirectory + SearchRec.Name, True);
          RemoveDirectory(PChar(TheDirectory + SearchRec.Name));
        end else begin
          DeleteFile(pchar(TheDirectory + SearchRec.Name));
        end;
      end;
      Res := FindNext(SearchRec);
    end;
    Result := True;
  finally
    FindClose(SearchRec);
  end;
end;

End.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲午夜久久久久久久久久久| 国产精品女同互慰在线看| 六月丁香婷婷色狠狠久久| 久久久久九九视频| 欧美日韩一区视频| 粉嫩一区二区三区性色av| 日韩av二区在线播放| 综合在线观看色| 国产欧美中文在线| 欧美成人一区二区三区| 欧美日韩免费视频| 一本到不卡免费一区二区| 国产福利一区二区三区视频| 全国精品久久少妇| 亚洲国产另类av| 一区二区在线免费| 国产精品盗摄一区二区三区| 国产喷白浆一区二区三区| 日韩女优电影在线观看| 在线成人av网站| 91久久精品日日躁夜夜躁欧美| 成人妖精视频yjsp地址| 国产精品 日产精品 欧美精品| 免费成人在线观看| 日本午夜精品视频在线观看 | 《视频一区视频二区| 精品88久久久久88久久久| 8v天堂国产在线一区二区| 欧美亚洲一区二区在线| 日本高清视频一区二区| 色婷婷亚洲精品| 色94色欧美sute亚洲线路一ni| av色综合久久天堂av综合| 成人黄色777网| 成人黄动漫网站免费app| 成人小视频在线观看| 成人性生交大片免费| eeuss影院一区二区三区| 成人av在线影院| av电影天堂一区二区在线| 99久久夜色精品国产网站| 99久久99久久精品国产片果冻| 不卡视频一二三| 91视频精品在这里| 在线观看日韩毛片| 欧美日韩精品系列| 777奇米四色成人影色区| 91精品国产91久久久久久一区二区 | 国产精品白丝在线| 亚洲人吸女人奶水| 一区二区三区久久久| 午夜av区久久| 精品一区二区国语对白| 国产精品综合网| 成人免费va视频| 99久久er热在这里只有精品15| 色婷婷精品大在线视频| 欧美亚洲国产一卡| 日韩视频一区二区| 日本一区二区三区国色天香| 亚洲图片激情小说| 天天综合天天综合色| 韩国中文字幕2020精品| 国产精品一区免费在线观看| www.亚洲激情.com| 欧美色电影在线| 精品捆绑美女sm三区| 中文字幕亚洲在| 午夜精品视频在线观看| 狠狠色丁香婷综合久久| aa级大片欧美| 91精品国产欧美一区二区成人| 久久久久久99久久久精品网站| 亚洲天天做日日做天天谢日日欢| 天天影视色香欲综合网老头| 国内不卡的二区三区中文字幕 | 久久久青草青青国产亚洲免观| 国产精品久久久久天堂| 亚洲成人一区二区| 国产.欧美.日韩| 欧美日韩在线一区二区| 久久久久久黄色| 亚洲午夜电影在线| 国产成人综合网| 678五月天丁香亚洲综合网| 欧美国产日韩亚洲一区| 日精品一区二区| 99久久国产综合精品色伊| 欧美一区二区三区不卡| 亚洲毛片av在线| 国产一区亚洲一区| 欧美日韩成人综合| 亚洲欧美怡红院| 精品一区二区国语对白| 欧美日韩精品一区二区| 日韩一区欧美小说| 国产乱子伦一区二区三区国色天香| 在线亚洲人成电影网站色www| 久久久99久久精品欧美| 日韩电影一区二区三区四区| 色悠悠久久综合| 久久一二三国产| 视频一区欧美日韩| 一本大道av一区二区在线播放| 国产色一区二区| 老色鬼精品视频在线观看播放| 色视频欧美一区二区三区| 国产欧美一区二区三区沐欲| 久久爱www久久做| 7878成人国产在线观看| 亚洲自拍偷拍麻豆| av在线播放一区二区三区| 久久亚洲精华国产精华液| 免费xxxx性欧美18vr| 欧美日韩一区二区三区不卡| 亚洲视频在线一区二区| 成人aa视频在线观看| 国产日韩视频一区二区三区| 久久精品国产网站| 日韩三级免费观看| 奇米精品一区二区三区四区| 欧美久久一二区| 亚洲国产日日夜夜| 欧美色视频在线| 亚洲一区二区视频在线观看| 91女神在线视频| 亚洲精品中文字幕乱码三区| av在线免费不卡| 国产精品萝li| av在线这里只有精品| 日韩美女视频一区二区| 91一区二区三区在线观看| 亚洲另类中文字| 色呦呦日韩精品| 亚洲电影你懂得| 欧美日韩国产另类一区| 视频一区欧美精品| 日韩精品资源二区在线| 国产真实乱子伦精品视频| 久久久久久免费毛片精品| 国产大陆亚洲精品国产| 国产精品网站一区| 91老师片黄在线观看| 亚洲伦理在线免费看| 精品婷婷伊人一区三区三| 日韩成人一区二区三区在线观看| 欧美一区二区三区四区五区| 国产在线一区观看| 国产精品免费视频一区| 色综合久久综合中文综合网| 亚洲国产精品久久人人爱| 5858s免费视频成人| 狠狠色丁香久久婷婷综合_中| 久久婷婷综合激情| 91一区二区三区在线观看| 亚洲成人av中文| 欧美va亚洲va| 丁香婷婷综合网| 一区二区三区中文字幕电影| 91精品国产综合久久精品图片| 老鸭窝一区二区久久精品| 中文字幕乱码日本亚洲一区二区| 色爱区综合激月婷婷| 日韩av电影免费观看高清完整版 | 91年精品国产| 天天综合网 天天综合色| 精品久久久久久久久久久久久久久 | 欧美久久一二三四区| 韩国欧美国产1区| 最新欧美精品一区二区三区| 欧洲亚洲国产日韩| 国产永久精品大片wwwapp| 亚洲免费在线播放| 精品国产一区二区三区不卡| 不卡av在线网| 青青国产91久久久久久| 中文字幕欧美激情一区| 欧美妇女性影城| 成人精品视频一区| 日日欢夜夜爽一区| 中文字幕一区二区三区乱码在线| 6080亚洲精品一区二区| 97超碰欧美中文字幕| 麻豆成人91精品二区三区| 亚洲欧美综合在线精品| 日韩精品中文字幕一区二区三区| 成人av电影在线观看| 久久国产精品区| 亚洲精品videosex极品| 久久久久久亚洲综合影院红桃| 欧美日韩精品一区视频| 国产白丝精品91爽爽久久 | 免费看欧美美女黄的网站| 国产精品久久夜| 精品av久久707| 欧美日韩视频在线一区二区| 成人免费av资源| 国产美女在线观看一区| 日本在线观看不卡视频| 亚洲人成人一区二区在线观看|