filetranscrit.pas

来自「File Coder / Decoder」· PAS 代码 · 共 130 行

PAS
130
字号
unit Filetranscrit;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, XPMan, StdCtrls, ComCtrls, StrUtils;

type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    Label1: TLabel;
    Ouvrir: TButton;
    Label2: TLabel;
    Code: TEdit;
    Button1: TButton;
    Label3: TLabel;
    TabSheet2: TTabSheet;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Label5: TLabel;
    OriginalFile: TEdit;
    Button5: TButton;
    Label6: TLabel;
    ProgressBar2: TProgressBar;
    Label4: TLabel;
    PageControl2: TPageControl;
    TabSheet3: TTabSheet;
    Memo1: TMemo;
    TabSheet4: TTabSheet;
    Memo2: TMemo;
    PageControl4: TPageControl;
    TabSheet7: TTabSheet;
    Memo3: TMemo;
    TabSheet8: TTabSheet;
    Memo4: TMemo;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    UncodeTxt: TEdit;
    CodeTxt: TEdit;
    Op1: TLabel;
    Op2: TLabel;
    Label7: TLabel;
    Edit1: TEdit;
    Label8: TLabel;
    Edit2: TEdit;
    Button6: TButton;
    Button7: TButton;
    ProgressBar1: TProgressBar;
    procedure Button7Click(Sender: TObject);
    procedure Arret2Click(Sender: TObject);
    procedure ArretClick(Sender: TObject);
    procedure initialisation(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure OuvrirClick(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { D閏larations priv閑s }
  public
    { D閏larations publiques }
  end;

var
  Form1: TForm1;
  quitcode, quitdecode: boolean;

implementation

{$R *.dfm}

procedure TForm1.Button3Click(Sender: TObject);
begin
 OpenDialog1.Execute;
 codeTxt.Text:=OpenDialog1.FileName;
end;

procedure TForm1.OuvrirClick(Sender: TObject);
begin
 OpenDialog1.Execute;
 UncodeTxt.Text:=OpenDialog1.FileName;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 SaveDialog1.DefaultExt:='.rcd';
 SaveDialog1.FilterIndex:=1;
 SaveDialog1.Execute;
 Code.Text:=SaveDialog1.FileName;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
 SaveDialog1.DefaultExt:='.txt';
 SaveDialog1.FilterIndex:=2;
 SaveDialog1.Execute;
 OriginalFile.Text:=SaveDialog1.FileName;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 S: file;
 ch: char;
 T: file of char;
 strbuff, labo: string;
 Buf: array [1..1000] of char;
 truc,passpos,passlength,txtlength,e,lus,ecrits: integer;
begin
{
 // Programme de codage
 Memo3.Text := '';
 Memo4.Text := '';
 Memo3.Lines.LoadFromFile(UncodeTxt.Text);
 AssignFile(T,Code.Text);
 Rewrite(T);
 ProgressBar1.Max := Length(Memo3.Lines.Text);
 passlength := Length(Edit1.Text);
 quitcode := true;

 For e := 0 To Length(Memo3.Lines.Text) do
 begin
  ch := Memo3.Lines.Text[e];
  txtlength := txtlength + 1;
  passpos := txtlength mod passlength;
  truc := (Integer(ch) - 50) + integer(Edit1.Text[passpos]);
  Application.ProcessMessages; //Pour ne pas donner l'aspect bloqu

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?