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

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

?? makepy02.pas

?? 在查詢漢字拼音首字母時需要取得漢字的拼音
?? PAS
字號:
unit MakePY02;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Clipbrd, Dialogs, DB, ADODB, StdCtrls, ComCtrls, Grids, DBGridEh;

type
  TPYForm = class(TForm)
    PYBase: TADOConnection;
    Data00: TADOQuery;
    Memo1: TRichEdit;
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    SB: TStatusBar;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Data00S: TDataSource;
    DBGridEh1: TDBGridEh;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Memo2: TMemo;
    Button10: TButton;
    Button11: TButton;
    procedure ProdMSPYCode(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure TurnOnMSPYCode(Sender: TObject);
    procedure CloseForm(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure ReadMSPYFromFile(Sender: TObject);
    procedure ProdGBPYCode(Sender: TObject);
    procedure TurnOnGBPYCode(Sender: TObject);
    procedure ReadGBPYFromFile(Sender: TObject);
  private
    { Private declarations }
    MSPYCode: string;
    GBPYCode: string;
    function GetMSPYStr(HZStr: WideString): string;
    function GetGBPYStr(HZStr: WideString): string;
  public
    { Public declarations }
  end;

Const
  HZ0001: string
  =
    'ABCDEFGHIJKLMNOPQRSTUVWXYZ' +
    'ABCDEFGHIJKLMNOPQRSTUVWXYZ' +
    '1234567890~!@#$%^&*()-+=\|/?<><>"""''[]{}:;,..';
  HZ0002: WideString
  =
    'ABCDEFGHIJKLMNOPQRSTUVWXYZ' +
    'abcdefghijklmnopqrstuvwxyz' +
    '1234567890~!@#$%^&*()-+=\|'+
    '/?<>《》“”"'[]{}:;,.。';
var
  PYForm: TPYForm;

implementation

uses Xeduser;

{$R *.dfm}

procedure TPYForm.FormCreate(Sender: TObject);
begin
  MSPYCode := '';
  GBPYCode := '';
  Data00.Open;
end;

procedure TPYForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Data00.Close;
end;

procedure TPYForm.ReadMSPYFromFile(Sender: TObject);
var
  TS: TStringList;
begin
  TS := TStringList.Create;
  TS.LoadFromFile('MSPYCode.TXT');
  MSPYCode := TS.Text;
  TS.Free;
  Memo1.Text := MSPYCode;
  Memo1.SetFocus;
  SB.Panels[1].Text := Format('拼音字庫長度:%d', [Length(MSPYCode)]);
  SB.Update;
end;

function TPYForm.GetMSPYStr(HZStr: WideString): string;
var
  n, i: integer;
  C: Char;
  PYStr: string;
begin
  Memo2.Clear;
  PYStr := '';
  for i := 1 to Length(HZStr) do begin
    C := string(HZStr[i])[1]; //取 ASCII 碼判斷是否漢字
    if C < #128 then begin
      PYStr := PYStr + UpperCase(HZStr[i]);
    end else begin
      N := Integer(HZStr[i]);
      N := N - 19967; //UniCode 漢字開始于19967
      try
        PYStr := PYStr + MSPYCode[N];
      except
        Memo2.Lines.Add(IntToStr(N) + WideChar(N + 19967));
        PYStr := PYStr + '?'; //非漢字的那些符號
      end;
    end;
  end;
  result := PYStr;
end;

procedure TPYForm.ReadGBPYFromFile(Sender: TObject);
var
  TS: TStringList;
begin
  TS := TStringList.Create;
  TS.LoadFromFile('GBPYCode.TXT');
  GBPYCode := TS.Text;
  TS.Free;
  Memo1.Text := GBPYCode;
  Memo1.SetFocus;
  SB.Panels[1].Text := Format('拼音字庫長度:%d', [Length(MSPYCode)]);
  SB.Update;
end;

function TPYForm.GetGBPYStr(HZStr: WideString): string;
var
  n, i: integer;
  C: Char;
  PYStr: string;
  D: string;
  P, Q, W: integer;
  PCStr: Char;
begin
  if GBPYCode = '' then ReadGBPYFromFile(nil);
  PYStr := '';
  for i := 1 to Length(HZStr) do begin
    C := string(HZStr[i])[1]; //取 ASCII 碼判斷是否漢字
    if C < #128 then begin
      PCStr := UpperCase(HZStr[i])[1];
    end else begin
      D := string(HZStr[I]);
      P := Pos(D, hz0002);
      if P > 0 then begin
         PCStr := HZ0001[P];
      end else begin
        Q := Ord(D[1]) - 176;
        W := Ord(D[2]) - 160;
        if (Q < 0) or (W <= 0) then PYStr := PYStr + '?' else
        try
          N := Q * 94 + W;
          PCStr := GBPYCode[N];
        except
          PCStr := '?'; //非漢字的那些符號
        end;
      end;
    end;
    PYStr:= PYStr + PCStr;
  end;
  result := PYStr;
end;

procedure TPYForm.ProdMSPYCode(Sender: TObject);
var
  FF: TFileStream;
  FN: string;
  BB: PWideChar;
  SS: WideString;
  RR, R2: integer;
  MM, NN: integer;
  LL: integer;
//  P1, P2: integer;
begin
  FN := 'WinPY.MB';
  FF := TFileStream.Create(FN, fmOpenRead);
  RR := $3B0A;
  R2 := $7E300;
  FF.Seek(RR, 0);
  MM := 0;
  GetMem(BB, 100);
  SetLength(SS, 20902);
  LL := 1;
  MSPYCode := '';
  repeat
    NN := FF.Read(BB^, 24);
    if BB^ = #0 then Break; //判斷拼音結束碼
    //SS := SS + BB + #32#32; //得到漢字全拼音
    MSPYCode := MSPYCode + BB[0]; //得到拼音首字母
    MM := MM + 1; //漢字計數
    if MM mod 500 = 0 then begin
      SB.Panels[1].Text := Format('進度:%d/20000', [MM]);
      SB.Update;
      Application.ProcessMessages;
    end;
  until {(MM > 21000) or}(BB^ = #0);
  FF.Free;
  SB.Panels[1].Text := Format('進度:%d/20902', [MM]);
  SB.Update;
  FreeMem(BB, 100);
//  Memo1.Text := SS;
  MSPYCode := UpperCase(MSPYCode);
  Clipboard.AsText := MSPYCode; //將拼音字母放到剪貼板
  Memo1.Text := MSPYCode;
end;

procedure TPYForm.ProdGBPYCode(Sender: TObject);
var
  S: WideString;
  P: WideString;
  i, j: Byte;
begin
  ReadMSPYFromFile(nil);
  S := '';
  for i := 176 to 247 do begin
    for j := 161 to 254 do begin
      S := S + WideString(Char(I) + Char(J));
    end;
  end;
  Memo1.SetFocus;
  P := GetMSPYStr(S);
  GBPYCode := P;
  Memo1.PlainText := True;
  Memo1.Text := P;
  Memo1.Lines.SaveToFile(ExePath + 'GBPYCode.TXT');
  SB.Panels[1].Text := Format('拼音字庫長度:%d', [Length(P)]);
  SB.Update;
end;

procedure TPYForm.TurnOnMSPYCode(Sender: TObject);
var
  S: WideString; //注意為方便最好使用 WideString.
//  S: String;   //注意為方便最好不用 string.
  C: Char;
  i: integer;
  N: integer;
begin
  if MSPYCode = '' then ReadMSPYFromFile(nil);
//  TellME('漢字拼音字母長度:' + IntToStr(Length(MSPYCode)));
  Edit2.Text := '';
  S := Edit1.Text;
  Edit2.Text := GetMSPYStr(S);
end;

procedure TPYForm.TurnOnGBPYCode(Sender: TObject);
var
  S: string;
begin
  if GBPYCode = '' then ProdGBPYCode(nil);
  Edit2.Text := '';
  S := Edit1.Text;
  Edit2.Text := GetGBPYStr(S);
end;

procedure TPYForm.CloseForm(Sender: TObject);
begin
  Close;
end;

procedure TPYForm.Button5Click(Sender: TObject);
var
  MB: TBlobField;
  MS: TADOBlobStream;
  RR: integer;
  TS: TStringStream;
begin
  TS := TStringStream.Create(MSPYCode);
  Data00.Open;
  if not Data00.Locate('編碼名稱', '全拼', []) then begin
    Data00.Append;
    Data00['編碼名稱'] := '全拼';
  end else begin
    Data00.Edit;
  end;
  MB := Data00.FieldByName('編碼內容') as TBlobField;
  MS := TADOBlobStream.Create(MB, bmWrite);
  TS.Position := 0;
  MS.LoadFromStream(TS);
  MS.Free;
  Data00.Post;
  TS.Free;
  Data00.Close;
end;

procedure TPYForm.Button6Click(Sender: TObject);
var
  MB: TBlobField;
  MS: TADOBlobStream;
  RR: integer;
  PP: string;
  MM: TMemoryStream;
begin
  MM := TMemoryStream.Create;
  Data00.Open;
  if not Data00.Locate('編碼名稱', '全拼', []) then Exit;
  MB := Data00.FieldByName('編碼內容') as TBlobField;
  MS := TADOBlobStream.Create(MB, bmRead);
  MS.SaveToStream(MM);
  MS.Free;
  MM.SaveToFile(ExePath + 'MSPYCode.TXT');
  MM.Free;
  Data00.Close;
end;

procedure TPYForm.Button7Click(Sender: TObject);
begin
  Data00.Open;
  if not Data00.Locate('編碼名稱', '全拼', []) then begin
    Data00.Append;
    Data00['編碼名稱'] := '全拼';
  end else begin
    Data00.Edit;
  end;
  Data00['編碼文本'] := MSPYCode;
  Data00.Post;
  Data00.Close;
end;

procedure TPYForm.Button8Click(Sender: TObject);
begin
  Data00.Open;
  if not Data00.Locate('編碼名稱', '全拼', []) then Exit;
  MSPYCode := '';
  MSPYCode := Data00['編碼文本'];
  Data00.Close;
  Memo1.Text := MSPYCode;
  Memo1.PlainText := True;
  Memo1.Lines.SaveToFile(ExePath + 'MSPYCode.TXT');
  Memo1.SetFocus;
  SB.Panels[1].Text := Format('拼音字庫長度:%d', [Length(MSPYCode)]);
  SB.Update;
  Memo1.Text := '[開始]'#13#10 + MSPYCode + '[結束]';
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品动漫网站| 精品一区二区三区视频| 日本欧美久久久久免费播放网| 精油按摩中文字幕久久| 91女神在线视频| 欧美精品一区男女天堂| 亚洲黄色小视频| 国产一区二区伦理| 欧美一区二区福利视频| 亚洲人成精品久久久久| 国产福利一区在线| 精品少妇一区二区三区免费观看 | 一区二区三区精品| 国产成人午夜视频| 日韩视频国产视频| 午夜久久久久久| 欧美中文字幕一区| 成人欧美一区二区三区黑人麻豆 | 亚洲欧美日韩国产中文在线| 国产精品一二三四五| 日韩一区二区三区免费看| 亚洲男女一区二区三区| 99久久精品国产一区二区三区| 久久日韩精品一区二区五区| 日本特黄久久久高潮| 欧美一区二区三区四区五区| 丝袜诱惑制服诱惑色一区在线观看| 精品国产亚洲在线| 欧美性色黄大片手机版| 白白色 亚洲乱淫| 久久综合av免费| 九九热在线视频观看这里只有精品| 欧美性大战久久久久久久| 亚洲精品日韩综合观看成人91| 东方aⅴ免费观看久久av| 久久久噜噜噜久久人人看| 国产制服丝袜一区| 国产午夜亚洲精品羞羞网站| 国产精品一区二区无线| 国产视频一区不卡| 成人妖精视频yjsp地址| 国产精品电影院| 91久久久免费一区二区| 亚洲成人av免费| 欧美一区二区三区不卡| 精品一二三四区| 国产亚洲精品bt天堂精选| 国产东北露脸精品视频| 国产精品毛片大码女人| 色综合久久久网| 亚洲高清视频中文字幕| 日韩一级片网址| 国产精华液一区二区三区| 国产精品私人自拍| 色88888久久久久久影院按摩| 亚洲午夜久久久久久久久电影院 | 成人福利视频网站| 亚洲欧美中日韩| 欧美日韩一区二区三区在线| 日韩高清在线一区| 日本一区二区三区久久久久久久久不 | 国产精品亚洲а∨天堂免在线| 国产精品九色蝌蚪自拍| 欧美三级中文字幕| 精品在线免费视频| 中文字幕在线免费不卡| 欧美精品第1页| eeuss鲁片一区二区三区在线观看| 亚洲丝袜美腿综合| 日韩三级中文字幕| www.综合网.com| 蜜臀精品一区二区三区在线观看 | 久久久久国产免费免费| 91美女在线看| 精品影院一区二区久久久| 亚洲欧美日韩一区| 精品对白一区国产伦| 日韩欧美国产综合| 成人在线一区二区三区| 日韩中文字幕不卡| |精品福利一区二区三区| 日韩一级黄色片| 在线一区二区三区四区| 韩国女主播成人在线| 亚洲成av人片| 日韩一区在线看| 久久人人97超碰com| 7777精品伊人久久久大香线蕉最新版| 成人在线综合网站| 国产一区在线看| 青青草原综合久久大伊人精品优势| 国产精品人人做人人爽人人添 | 欧美亚洲尤物久久| 成人黄页在线观看| 黄色精品一二区| 秋霞影院一区二区| 午夜精品一区二区三区三上悠亚| 国产精品久久久久久亚洲毛片 | 日韩欧美一区二区免费| 欧美吻胸吃奶大尺度电影 | 91蝌蚪porny| 成人免费高清视频| 国产在线视视频有精品| 毛片av一区二区| 蜜臀av性久久久久蜜臀av麻豆| 亚洲国产欧美一区二区三区丁香婷| 国产精品传媒视频| 欧美激情在线观看视频免费| 久久综合999| 国产校园另类小说区| 国产日韩欧美麻豆| 久久久久99精品国产片| 精品久久久久久无| 精品日韩一区二区| 久久夜色精品一区| 久久久久久久综合色一本| 欧美变态tickle挠乳网站| 日韩精品中文字幕在线不卡尤物| 欧美一区二区三区婷婷月色| 日韩欧美在线不卡| 2023国产精品自拍| 国产无一区二区| 中文字幕一区二区三区四区| 国产精品久久久久影院| 中文字幕视频一区| 一区二区日韩电影| 五月天一区二区| 卡一卡二国产精品| 国产精品资源在线| 不卡一区在线观看| 日本高清不卡aⅴ免费网站| 欧美色电影在线| 国产欧美日韩视频一区二区| 国产精品久久看| 亚洲一区二区高清| 日本成人超碰在线观看| 国内精品伊人久久久久av一坑| 丰满少妇在线播放bd日韩电影| av欧美精品.com| 欧美日韩国产在线播放网站| 精品久久国产老人久久综合| 欧美国产一区二区在线观看| 一区二区三区日韩| 麻豆91在线播放| 成人av电影在线| 欧美日本精品一区二区三区| 精品电影一区二区三区| 亚洲视频综合在线| 蜜桃视频在线一区| 91在线视频18| 日韩精品自拍偷拍| 亚洲精品乱码久久久久久黑人| 日本美女一区二区三区视频| jiyouzz国产精品久久| 欧美猛男超大videosgay| 国产欧美在线观看一区| 亚洲成av人片在线观看无码| 成人免费不卡视频| 欧美一卡二卡三卡| 亚洲婷婷综合久久一本伊一区| 日本大胆欧美人术艺术动态| 一道本成人在线| 久久一留热品黄| 日韩中文字幕区一区有砖一区| 成人国产精品免费观看动漫| 欧美一级高清片| 亚洲欧美国产三级| 国产精品一区二区三区乱码| 欧美美女激情18p| 亚洲欧美日韩国产综合| 国产成人亚洲综合色影视| 欧美色国产精品| 亚洲免费观看高清完整版在线| 国产一区视频导航| 在线不卡免费欧美| 亚洲男同性恋视频| 国产不卡视频一区二区三区| 欧美电影免费提供在线观看| 亚洲国产日韩av| 色狠狠av一区二区三区| 国产精品麻豆视频| 国内精品嫩模私拍在线| 亚洲成人免费观看| 粉嫩蜜臀av国产精品网站| 欧美精品 日韩| 亚洲激情在线激情| 99久久精品免费看国产| 国产色综合久久| 国产一区二区三区日韩| 制服.丝袜.亚洲.另类.中文| 亚洲一二三区不卡| 色噜噜狠狠成人中文综合| 一二三四社区欧美黄| 99国产精品一区| 国产精品无遮挡| 成人久久视频在线观看| 国产嫩草影院久久久久| 国产成a人亚洲| 欧美高清一级片在线观看| 国产盗摄女厕一区二区三区|