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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? _funct.pas

?? 這個是去年寫的東東。 以前公司一直使用易飛ERP
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
{===============================================================} 
{ 函數  : RESULTSTRING = HexToBin(HEXSTRING) 
{ 目的   : 把十六進制字符串轉換為二進制字符串   
{ 
{===============================================================} 
{ 函數  : RESULTINTEGER = HexCharToInt(HEXCHAR) 
{ 目的   : 轉換一個十六進制字符為整數
{===============================================================} 
{ 函數  : RESULTSTRING = HexCharToBin(HEXCHAR) 
{ 目的   : 轉換一個十六進制字符為二進制字符串
{===============================================================} 
{ 函數  : RESULTINTEGER = Pow(BASE,POWER) 
{ 目的   : 指數函數
{===============================================================} 
{ 函數  : RESULTINTEGER = BinStrToInt(BINSTRING) 
{ 目的   : 把二進制字符串轉換為整數
{===============================================================} 
{ 函數  : RESULTSTRING = DecodeSMS7Bit (PDUSTRING) 
{ 目的   : 解碼一個7-bit SMS (GSM 03.38) 為ASCII碼 
{===============================================================} 
{ 函數  :  RESULTSTRING = ReverseStr (SOURCESTRING) 
{ 目的   : 反轉一個字符串
{===============================================================}
unit _funct;

interface
 uses
  Windows,Classes,Sysutils,inifiles;
  
  function HexToBin(HexNr : string): string;
  function HexCharToInt(HexToken : char):Integer;
  function HexCharToBin(HexToken : char): string;
  function pow(base, power: integer): integer;
  function BinStrToInt(BinStr : string) : integer;
  function DecodeSMS7Bit(PDU : string):string;
  function ReverseStr(SourceStr : string) : string;
  {判斷字符是否是數字}
  function IsDigit(ch: char): boolean;
  {判斷字符是否是大寫字符}
  function IsUpper(ch: char): boolean;
  {判斷字符是否是小寫字符}
  function IsLower(ch: char): boolean;
  {轉換為大寫字符}
  function ToUpper(ch: char): char;
  {轉換為小寫字符}
  function ToLower(ch: char): char;
  { Capitalizes first letter of every word in s }
  function Proper(const s: string): string ;
  {返回兩個子字符串之間字符的個數}
  Function p2pcount( s, ss1, ss2 : string ): integer;
  {更快速的字符查詢,快40%}
  function ScanStr(ToScan: PChar; Sign: Char):PChar;
  {替換字符串中子串的函數,他可以從字符串中找出指定子串,并替換為另一子串。}
  function replacing(S,source,target:string):string;
  {另兩個替換字符串中子串的函數}
  function repl_substr( sub1, sub2, s: string ): string;
  {替換字符串}
  function ReplaceText(const S,ReplacePiece,ReplaceWith: String):String;
  {替換全部子字符串的函數}
  function ReplaceSub(str, sub1, sub2: String): String;
  {在字符串左右填充指定數量的指定字符}
  function UT_PadString(inString :string; maxLength :integer; padChar :char;
           left :boolean) :string;
  {提取字符串中指定子字符串前的字符串}
  Function Before ( Src:string ; Var S:string ) : string ;
  {提取字符串中指定子字符串后的字符串}
  Function After ( Src:string ; Var S:string ) : string ;
  {判斷字符串是否可以轉換為整數}
  function IsIntStr(const S: string): boolean;
  {從字符串中刪除指定字符串}
  function RemoveInvalid(what, where: string): string;
  {根據某個字符分割字符串的函數}
  Procedure SeparateTerms(s : string;Separator : char;Terms : TStringList);
 {加密}
  Function EncrypKey (Src:String; Key:String):string;
  {解密函數}
  Function UncrypKey (Src:String; Key:String):string;
  {寫ini}
  Function WriteIniFile (inifile:string; inimain:string; inimain2:string; initext:string):Boolean;
  {讀INI文件}
  Function ReadIniFile (inifile:string; inimain:string; inimain2:string):String;
  {生成隨機數字}
  Function RanNum() : string; stdcall;
  {如果是IP地址返回True,否則,返回False }
  Function ISIPAddr(IPStr:string):Boolean;
  {添加文件,文件名n,添加的字符s}
  Function Apptext(s,Src:string):Boolean;
  {格式化日期.把20050102變成2005-01-02}
  Function FormatSD(s:string):string;
  {檢查是否為日期 }
  Function Do_chkdate(s:string):Boolean;

implementation

{把16進制字符串轉換為2進制字符串} {}
function HexCharToInt(HexToken : char):Integer;
begin 
  {if HexToken>#97 then HexToken:=Chr(Ord(HexToken)-32); 
  { use lowercase aswell } 

  Result:=0; 

  if (HexToken>#47) and (HexToken<#58) then       { chars 0....9 } 
     Result:=Ord(HexToken)-48 
  else if (HexToken>#64) and (HexToken<#71) then  { chars A....F } 
     Result:=Ord(HexToken)-65 + 10; 
end; 

{轉換一個16進制字符為整數}
function HexCharToBin(HexToken : char): string;
var DivLeft : integer; 
begin 
    DivLeft:=HexCharToInt(HexToken);   { first HEX->BIN } 
    Result:=''; 
                                       { Use reverse dividing } 
    repeat                             { Trick; divide by 2 } 
      if odd(DivLeft) then             { result = odd ? then bit = 1 } 
        Result:='1'+Result             { result = even ? then bit = 0 } 
      else 
        Result:='0'+Result; 

      DivLeft:=DivLeft div 2;       { keep dividing till 0 left and length = 4 } 
    until (DivLeft=0) and (length(Result)=4);      { 1 token = nibble = 4 bits } 
end; 

{轉換一個16進制字符為2進制字符串}
function HexToBin(HexNr : string): string;
{ only stringsize is limit of binnr } 
var Counter : integer; 
begin 
  Result:=''; 
  for Counter:=1 to length(HexNr) do
    Result:=Result+HexCharToBin(HexNr[Counter]);
end; 

{指數函數}
function pow(base, power: integer): integer;
var counter : integer; 
begin 
  Result:=1; 
  for counter:=1 to power do
    Result:=Result*base; 
end; 

{把2進制字符串轉換為整數}
function BinStrToInt(BinStr : string) : integer;
var counter : integer;
begin 
  if length(BinStr)>16 then 
    raise ERangeError.Create(#13+BinStr+#13+ 
            'is not within the valid range of a 16 bit binary.'+#13); 

  Result:=0; 

  for counter:=1 to length(BinStr) do 
      if BinStr[Counter]='1' then 
        Result:=Result+pow(2,length(BinStr)-counter); 
end; 

{解碼一個7-bit SMS (GSM 03.38) o ASCII碼}
function DecodeSMS7Bit(PDU : string):string;
var OctetStr : string; 
    OctetBin : string; 
    Charbin  : string; 
    PrevOctet: string; 
    Counter  : integer; 
    Counter2 : integer; 
begin 
  PrevOctet:=''; 
  Result:=''; 

  for Counter:=1 to length(PDU) do 
    begin 
      if length(PrevOctet)>=7 then     { if 7 Bit overflow on previous } 
        begin 
          if BinStrToInt(PrevOctet)<>0 then 
            Result:=Result+Chr(BinStrToInt(PrevOctet)) 
          else Result:=Result+' '; 

          PrevOctet:=''; 
        end; 

      if Odd(Counter) then            { only take two nibbles at a time } 
        begin 
          OctetStr:=Copy(PDU,Counter,2); 
          OctetBin:=HexToBin(OctetStr); 

          Charbin:=''; 
          for Counter2:=1 to length(PrevOctet) do 
            Charbin:=Charbin+PrevOctet[Counter2]; 

          for Counter2:=1 to 7-length(PrevOctet) do 
            Charbin:=OctetBin[8-Counter2+1]+Charbin; 

          if BinStrToInt(Charbin)<>0 then Result:=Result+Chr(BinStrToInt(CharBin)) 
            else Result:=Result+' '; 

          PrevOctet:=Copy(OctetBin,1,length(PrevOctet)+1); 
        end; 
    end; 
end; 

{反轉一個字符串}
function ReverseStr(SourceStr : string) : string;
var Counter : integer; 
begin 
  Result:=''; 

  for Counter:=1 to length(SourceStr) do 
    Result:=SourceStr[Counter]+Result; 
end;

 ////////////////////////////////////////////////////////
{判斷字符是否是數字}
function IsDigit(ch: char): boolean;
begin
  Result := ch in ['0'..'9'];
end;

{判斷字符是否是大寫字符}
function IsUpper(ch: char): boolean;
begin
  Result := ch in ['A'..'Z'];
end;

{判斷字符是否是小寫字符}
Function IsLower(ch: char): boolean;
begin
  Result := ch in ['a'..'z'];
end;

{轉換為大寫字符}
Function ToUpper(ch: char): char;
begin
  Result := chr(ord(ch) and $DF);
end;

{轉換為小寫字符}
Function ToLower(ch: char): char;
begin
  Result := chr(ord(ch) or $20);
end;

{ Capitalizes first letter of every word in s }
Function Proper(const s: string): string;
var
  i: Integer;
  CapitalizeNextLetter: Boolean;
begin
  Result := LowerCase(s);
  CapitalizeNextLetter := True;
  for i := 1 to Length(Result) do
  begin
    if CapitalizeNextLetter and IsLower(Result[i]) then
      Result[i] := ToUpper(Result[i]);
    CapitalizeNextLetter := Result[i] = ' ';
  end;
end;
////////////////////////////////////////////////////////////

{返回兩個子字符串之間字符的個數}
Function p2pcount( s, ss1, ss2 : string ): integer;
var i, j, slen : integer;
begin
   i := pos( ss1, s );
   j := pos( ss2, s );
   slen := Length(ss2); 
   if j >= i then
     Result := j - i + slen
   else
     Result := 0;
end;

{更快速的字符查詢,快40%}
Function ScanStr(ToScan: PChar; Sign: Char):PChar;
begin
  Result:= nil;
  if ToScan <> nil then
    while (ToScan^ <> #0) do begin
      if ToScan^ = Sign then begin
        Result:= ToScan;
        break;
       end;
     inc(ToScan);
    end;
end;

/////////////////////////////
{替換字符串中子串的函數,他可以從字符串中找出指定子串,并替換為另一子串。}
function replacing(S,source,target:string):string;
var site,StrLen:integer;
begin
  {source在S中出現的位置}
  site:=pos(source,s);
  {source的長度}
  StrLen:=length(source);
  {刪除source字符串}
  delete(s,site,StrLen);
  {插入target字符串到S中}
  insert(target,s,site);
  {返回新串}
  replacing:=s;
end;
///////////////////////

{另兩個替換字符串中子串的函數}
function repl_substr( sub1, sub2, s: string ): string;
var i: integer;
begin
   repeat
     i := pos( sub1, s ) ;
     if i > 0 then begin
       delete( s, i, Length(sub1));
       insert( sub2, s, i );
     end;
   until i < 1;
   Result := s;
end;

{替換字符串}
Function ReplaceText(const S,ReplacePiece,ReplaceWith: String):String;
Var
  Position: Integer;
  TempStr: String;
begin
  Position := Pos(ReplacePiece,S);
  if Position > 0 then Begin
    TempStr := S;
    Delete(TempStr,1,Position-1+Length(ReplacePiece));

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产三级精品三级| 日韩高清不卡一区二区| 亚洲欧美日韩成人高清在线一区| 亚洲午夜三级在线| 国产大片一区二区| 欧美欧美欧美欧美首页| 亚洲国产精品成人综合 | 亚洲va在线va天堂| 国产精品99久| 6080yy午夜一二三区久久| 国产精品你懂的| 日本不卡高清视频| 日本二三区不卡| 日本一区二区免费在线观看视频| 亚洲高清中文字幕| 色婷婷精品久久二区二区蜜臂av| 精品成a人在线观看| 亚洲国产wwwccc36天堂| 成人av中文字幕| 日韩精品一区二区三区视频播放| 亚洲国产精品天堂| 91玉足脚交白嫩脚丫在线播放| 欧美不卡一区二区| 天天av天天翘天天综合网| 97久久精品人人做人人爽| 久久久久久久久久久久久女国产乱| 天堂一区二区在线| 欧美亚洲综合一区| 亚洲精品伦理在线| 9色porny自拍视频一区二区| 久久久www免费人成精品| 天天免费综合色| 欧美三电影在线| 亚洲乱码国产乱码精品精98午夜 | 捆绑调教美女网站视频一区| 欧美视频你懂的| 樱桃国产成人精品视频| 99久久免费精品高清特色大片| 精品国产亚洲一区二区三区在线观看| 一区二区不卡在线播放 | 欧美高清在线一区二区| 国产成人亚洲综合色影视| 亚洲精品一区二区三区香蕉| 另类人妖一区二区av| 91麻豆精品国产自产在线| 午夜成人免费视频| 欧美日韩高清一区| 欧美aaaaaa午夜精品| 欧美一区二区三区电影| 蜜臀久久久99精品久久久久久| 欧美一级生活片| 极品少妇xxxx偷拍精品少妇| 欧美精品一区二区三区久久久| 狠狠色综合色综合网络| 久久精品日韩一区二区三区| 国产成人综合网| 中文字幕日韩精品一区| 欧美影视一区在线| 日本在线不卡视频| xnxx国产精品| 99精品在线免费| 亚洲国产成人高清精品| 欧美一区二区三区白人| 国产麻豆精品久久一二三| 国产精品视频第一区| 在线日韩国产精品| 日本不卡视频一二三区| 日本一区二区三级电影在线观看 | 亚洲视频香蕉人妖| 欧美日韩一二区| 狠狠网亚洲精品| 1区2区3区欧美| 777a∨成人精品桃花网| 国产精品456露脸| 亚洲午夜久久久久久久久久久| 欧美高清性hdvideosex| 国产成人午夜视频| 亚洲一区在线播放| 久久亚洲一级片| 91国偷自产一区二区使用方法| 日韩中文字幕亚洲一区二区va在线| 久久亚洲捆绑美女| 在线观看国产精品网站| 激情综合网最新| 一区二区三区免费观看| 26uuu另类欧美| 欧美三级视频在线播放| 国产激情视频一区二区在线观看| 亚洲一区中文日韩| 亚洲国产精品传媒在线观看| 欧美三级电影在线看| 床上的激情91.| 免费欧美在线视频| 一区二区三区在线观看视频| 久久精品在这里| 91精品欧美久久久久久动漫 | 国产成人欧美日韩在线电影| 亚洲国产中文字幕| 亚洲欧洲精品一区二区三区 | 亚洲一二三区不卡| 亚洲欧洲日韩av| 久久亚洲精华国产精华液 | 国产精品福利一区| 精品久久久久久久久久久久久久久久久 | 久久99在线观看| 亚洲福利电影网| 亚洲啪啪综合av一区二区三区| 欧美v日韩v国产v| 8x8x8国产精品| 欧美日韩综合在线免费观看| 97成人超碰视| 北岛玲一区二区三区四区| 激情综合色播激情啊| 欧美a一区二区| 三级在线观看一区二区| 一区二区三区四区激情| 亚洲天堂成人网| 国产精品视频一二三区| 国产精品网站在线播放| 国产女人18毛片水真多成人如厕| 日韩欧美的一区| 日韩一级欧美一级| 制服丝袜激情欧洲亚洲| 7777精品久久久大香线蕉| 欧美色偷偷大香| 欧美伦理视频网站| 欧美高清视频在线高清观看mv色露露十八 | 国产精品美女久久久久久久久久久| 久久久www成人免费无遮挡大片| 久久婷婷色综合| 国产无遮挡一区二区三区毛片日本| 亚洲精品在线观| 秋霞成人午夜伦在线观看| 天天影视涩香欲综合网| 日韩成人午夜电影| 狠狠色狠狠色综合| 成人在线视频首页| 99久久99久久久精品齐齐| 日本黄色一区二区| 欧美精品一二三四| 精品福利一二区| 国产性做久久久久久| 中文字幕亚洲精品在线观看| 亚洲综合在线五月| 蜜臀久久99精品久久久久宅男| 免费在线看一区| 国产盗摄一区二区三区| 99在线视频精品| 欧美日韩视频一区二区| 精品久久久久久久久久久久久久久久久 | 日本不卡123| 国产91清纯白嫩初高中在线观看| voyeur盗摄精品| 欧美日韩1区2区| 国产日本一区二区| 洋洋av久久久久久久一区| 麻豆成人在线观看| av一区二区三区在线| 欧美三级午夜理伦三级中视频| 日韩欧美在线网站| 一区在线观看视频| 日本伊人午夜精品| 99久久国产综合精品麻豆| 91精品在线免费| 国产精品二三区| 久久精品国产久精国产爱| 99久久精品国产导航| 欧美一级欧美三级在线观看| 国产精品乱码人人做人人爱| 五月天丁香久久| 成人ar影院免费观看视频| 欧美一区二区在线观看| 综合久久综合久久| 国产制服丝袜一区| 欧美亚洲国产一区二区三区| 国产亚洲精品超碰| 日韩成人免费看| 色婷婷亚洲一区二区三区| 亚洲精品在线三区| 天堂午夜影视日韩欧美一区二区| 99久久久国产精品| 久久久久国产精品免费免费搜索| 亚洲gay无套男同| 91浏览器入口在线观看| 国产亚洲综合色| 精品中文字幕一区二区| 欧美日韩亚洲综合一区二区三区| 亚洲欧洲99久久| 国产91丝袜在线观看| 精品国产乱码久久久久久蜜臀| 亚洲一区二区三区三| 99精品国产99久久久久久白柏| 精品不卡在线视频| 美国三级日本三级久久99| 欧美性色黄大片| 国内成+人亚洲+欧美+综合在线 | 欧美三区在线观看| 亚洲免费在线播放| 91在线一区二区三区| 国产精品视频一区二区三区不卡|