Les Snippets

Connexion

Convertir un texte en sa representation binaire et inversement

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 11/11/2008 14:08:22 et initié par f0xi [Liste]
Vue : 898
Catégorie(s) : Trucs & Astuces, Algorithme, Chaîne de caractères, Divers
Langages dispo pour ce code :
- Delphi 5



Langage : Delphi 5
Date ajout : 11/11/2008
Posté par f0xi [Liste]
{ Conversion d'un texte vers sa représentation binaire
}
function StrToStrBin(const S: string): string;
var pOutput : pChar;
    pInput : ^byte;
    N, LenInput : integer;
const
  AtBin : array[boolean] of char = '01';
begin
  LenInput := Length(S);
  SetLength(Result, LenInput shl 3);
  pInput := @S[1];
  pOutput := pChar(result);
  for N := 1 to LenInput do
  begin
    pOutput[0] := AtBin[(pInput^ and $80) = $80];
    pOutput[1] := AtBin[(pInput^ and $40) = $40];
    pOutput[2] := AtBin[(pInput^ and $20) = $20];
    pOutput[3] := AtBin[(pInput^ and $10) = $10];
    pOutput[4] := AtBin[(pInput^ and $08) = $08];
    pOutput[5] := AtBin[(pInput^ and $04) = $04];
    pOutput[6] := AtBin[(pInput^ and $02) = $02];
    pOutput[7] := AtBin[(pInput^ and $01) = $01];
    inc(pOutput,8);
    inc(pInput);
  end;
end;

{ Conversion d'une représentation binaire en texte.
}
function StrBinToStr(const S: string): string;
var pInput : PChar;
    pOutput: ^Byte;
    N, LenInput: integer;
const
  AtBin : array['0'..'1'] of byte = (0,1);
begin
  LenInput := Length(S);
  SetLength(result, LenInput shr 3);
  LenInput := Length(result);
  pInput := PChar(S);
  pOutput := @result[1];
  for N := 1 to LenInput do
  begin
    pOutput^ := 0;
    pOutput^ := byte( (AtBin[pInput[0]] shl 7) or
                      (AtBin[pInput[1]] shl 6) or
                      (AtBin[pInput[2]] shl 5) or
                      (AtBin[pInput[3]] shl 4) or
                      (AtBin[pInput[4]] shl 3) or
                      (AtBin[pInput[5]] shl 2) or
                      (AtBin[pInput[6]] shl 1) or
                       AtBin[pInput[7]]
                  );
    inc(pInput, 8);
    inc(pOutput);
  end;
end; 		

Snippets en rapport avec : Texte, Conversion, Binaire, Bintostr, Strtobin



Codes sources en rapport avec : Texte, Conversion, Binaire, Bintostr, Strtobin

{Visual Basic, VB6, VB.NET, VB 2005} VBSCRIPT --> CONVERSION DE FICHIER TEXTE EN FICHIER EXCEL PAR LIGNE DE COMMANDE
Ce script, lancé en ligne de commande dos, permet de convertir un fichier texte en fichier excel. ...

{Python} CONVERSION ET COMPARAISON D'ENTIER RELATIFS EN BINAIRE
Slt! J'ai écri une fonction qui permet de convertir à la fois deux entiers relatifs en binaire sur k...

{Visual Basic, VB6, VB.NET, VB 2005} CALC'BOOL LA CALCULETTE BOOLÉENNE
Un calculette booléenne avec module de conversion Décimal-Hexa-Binaire. Pour les conversions il suf...

{Javascript / DHTML} FONCTION UCWORDS
Fonction qui permet de mettre en majuscules toutes les premières lettres de chaque mot d'un texte, e...

{C / C++ / C++.NET} CONVERSION D'ENTIERS DANS LES BASES BINAIRE, HEXADECIMALE, OCTALE, TEST DE NOMBRE PREMIER TRADUCTION LITTERALE
Ce code permet de convertir un entier en binaire, octal ou hexadecimal, de meme il permet de voir si...

{Visual Basic, VB6, VB.NET, VB 2005} CLASSE DE CONVERSION INTER-BASES (BASE 2-36 VERS BASE 2-36)
Salut, voilà une classe de conversion inter-bases. Certes, encore une source dans ce genre, mais l'i...

{C# / C#.NET} CONVERSION ASCII-8 - BINAIRE
Salut; Voici une classe à but pédagogique qui convertit un "string ascii" vers un "string binaire"....

{Javascript / DHTML} CONVERSION AVEC OPÉRATEUR BINAIRE
Il existe des milliers de source pour convertir un nombre en une autre base, mais beaucoup ce limite...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTISSEUR UNIVERSEL EN BASES MULTIPLES
Petit programme permettant de convertir un nombre décimal en un nombre en bases multiples ( de 2 à 2...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERSION DE BASE2 BASE10 BASE16
Bon voila c'est un petit code qui permet la conversion des bases 2 bases 10 et bases 16. Un petit p...