Dosyayı 0 ve 1 şeklinde gösterme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Dosyayı 0 ve 1 şeklinde gösterme
iyi çalışmalar arkadaşlar. Bir dosyayı veya stringi farketmez 0 ve 1 şeklinde nasıl gösteririz. BintoString mi öyle birşeymiş . Dosyayı 0 ve 1 sayıları şeklinde gösterecek ve tekrardan eski haline getirecek. BintoString ve StringToBin şeklinde. Nasıl yaparım acaba .Yardımlarınızı Bekliyorum.
Onun tek dostu Allah
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Dosyayı 0 ve 1 şeklinde gösterme
Eğer 10 MB'lık dosyayı 80 MB yapmayı gözün kestirebiliyorsa aşağıdaki fonksiyon bir byte değerini stringe çevirebilmektedir. Bunu kullanarak bir sistem geliştirebilirsin.
Kod: Tümünü seç
function BytetoBinary(Deger:Byte):String;
const Bir:Byte=1; Rakami:array[0..1]of String=('0','1');
var n:Integer;
begin
Result:='';
while Deger>0 do begin
Result:=Rakami[Deger and Bir{en sağda kalan bit}]+Result;
Deger:=Deger shr Bir;//değer 1 bit sağa kaydırılarak küçültülür
end;
for n:=8-Length(Result) downto 1 do Result:='0'+Result;
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: Dosyayı 0 ve 1 şeklinde gösterme
merhaba
aşağıda byte bilginin binary string formata nasıl çevrilebileceği hakkında bir örnek var.
aşağıda byte bilginin binary string formata nasıl çevrilebileceği hakkında bir örnek var.
Kod: Tümünü seç
unit teststru1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
Const
byteBites:Array [0..255] of String=(
'00000000','00000001','00000010','00000011','00000100','00000101','00000110','00000111',
'00001000','00001001','00001010','00001011','00001100','00001101','00001110','00001111',
'00010000','00010001','00010010','00010011','00010100','00010101','00010110','00010111',
'00011000','00011001','00011010','00011011','00011100','00011101','00011110','00011111',
'00100000','00100001','00100010','00100011','00100100','00100101','00100110','00100111',
'00101000','00101001','00101010','00101011','00101100','00101101','00101110','00101111',
'00110000','00110001','00110010','00110011','00110100','00110101','00110110','00110111',
'00111000','00111001','00111010','00111011','00111100','00111101','00111110','00111111',
'01000000','01000001','01000010','01000011','01000100','01000101','01000110','01000111',
'01001000','01001001','01001010','01001011','01001100','01001101','01001110','01001111',
'01010000','01010001','01010010','01010011','01010100','01010101','01010110','01010111',
'01011000','01011001','01011010','01011011','01011100','01011101','01011110','01011111',
'01100000','01100001','01100010','01100011','01100100','01100101','01100110','01100111',
'01101000','01101001','01101010','01101011','01101100','01101101','01101110','01101111',
'01110000','01110001','01110010','01110011','01110100','01110101','01110110','01110111',
'01111000','01111001','01111010','01111011','01111100','01111101','01111110','01111111',
'10000000','10000001','10000010','10000011','10000100','10000101','10000110','10000111',
'10001000','10001001','10001010','10001011','10001100','10001101','10001110','10001111',
'10010000','10010001','10010010','10010011','10010100','10010101','10010110','10010111',
'10011000','10011001','10011010','10011011','10011100','10011101','10011110','10011111',
'10100000','10100001','10100010','10100011','10100100','10100101','10100110','10100111',
'10101000','10101001','10101010','10101011','10101100','10101101','10101110','10101111',
'10110000','10110001','10110010','10110011','10110100','10110101','10110110','10110111',
'10111000','10111001','10111010','10111011','10111100','10111101','10111110','10111111',
'11000000','11000001','11000010','11000011','11000100','11000101','11000110','11000111',
'11001000','11001001','11001010','11001011','11001100','11001101','11001110','11001111',
'11010000','11010001','11010010','11010011','11010100','11010101','11010110','11010111',
'11011000','11011001','11011010','11011011','11011100','11011101','11011110','11011111',
'11100000','11100001','11100010','11100011','11100100','11100101','11100110','11100111',
'11101000','11101001','11101010','11101011','11101100','11101101','11101110','11101111',
'11110000','11110001','11110010','11110011','11110100','11110101','11110110','11110111',
'11111000','11111001','11111010','11111011','11111100','11111101','11111110','11111111'
);
procedure TForm1.Button1Click(Sender: TObject);
Var
j,k:integer;
s:String;
begin
s:=Edit1.Text;//edit1 kaynak bilginin girişi için kullanıldı
Edit2.Text:=''; //edit2 çıktının okunacağı kutu
k:=length(s);
for j := 1 to k do
begin
Edit2.Text:=Edit2.Text+bytebites[ord(s[j])];
if j<k then
Edit2.Text:=Edit2.Text+' ';//karakterlerin binary karşılıklarının arasına boşluk karakteri eklendi
end;
end;
end.
- adelphiforumz
- Üye
- Mesajlar: 602
- Kayıt: 01 Nis 2008 05:38
- Konum: İstanbul
Re: Dosyayı 0 ve 1 şeklinde gösterme
ihtiyacın olabilecek her türlü çeviri burda var gibi bir incele
http://www.antrak.org.tr/gazete/082001/nusret.htm
http://www.antrak.org.tr/gazete/082001/nusret.htm
Ehil olmayanlara sabretmek ehil olanları parlatır.
Akıllı birisinden gelen cefa, bilgisizlerin vefasından iyidir.
Bilgiye ulaştı mı ayak, kanat olur
Biz insanı kıyafetiyle ağırlar bilgisiyle uğurlarız.
Mevlana
Akıllı birisinden gelen cefa, bilgisizlerin vefasından iyidir.
Bilgiye ulaştı mı ayak, kanat olur
Biz insanı kıyafetiyle ağırlar bilgisiyle uğurlarız.
Mevlana
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Dosyayı 0 ve 1 şeklinde gösterme
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .