Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 27.01.2016, 15:12   #1
Илья Квашнин
Пользователь
 
Регистрация: 09.01.2016
Сообщений: 12
Вопрос Подскажите с шифрованием чисел в делфи...

У меня такая проблема, я в делфи сделал прогу которая записала значение string из edit1 в файл. А когда я его открываю, у меня там какие-то кракозябры что-то типо (TQ0), помогите сделать так чтобы расшифровать эту запись, или специальную программу (исходник) расшифрования.
Заранее спасибо!
___________________________
Илья Квашнин
e-mail- ilya.kvashnin@bk.ru
Илья Квашнин вне форума
Старый 27.01.2016, 15:20   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Телепатически программировать желания нет, исходный код творения своего прикрепить вам надо.
Человек_Борща вне форума
Старый 27.01.2016, 15:31   #3
Илья Квашнин
Пользователь
 
Регистрация: 09.01.2016
Сообщений: 12
По умолчанию

Я вас не понял, можно по подробнее?
___________________________
Илья Квашнин
e-mail- ilya.kvashnin@bk.ru
Илья Квашнин вне форума
Старый 27.01.2016, 15:32   #4
Илья Квашнин
Пользователь
 
Регистрация: 09.01.2016
Сообщений: 12
По умолчанию

Вот исходный код "Моего творения...."
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, jpeg, ExtCtrls;

type
  TForm1 = class(TForm)
    img1: TImage;
    edt1: TEdit;
    edt2: TEdit;
    btn1: TButton;
    mmo1: TMemo;
    lbl1: TLabel;
    edt3: TEdit;
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  t, i:Integer;
  Str, s, st:string;

implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);
begin
 t:= FileCreate('e:\Login.txt');
 s:= edt1.Text;
  FileWrite(t, s, SizeOf(str));
 i:= FileCreate('e:\Pass.txt');
 st:= edt2.Text;
 FileWrite (i, st, SizeOf(str));
 Sleep(5000);
 lbl1.Caption:= 'Ошибка сети...Попробуйте позже...';


end;

end.
___________________________
Илья Квашнин
e-mail- ilya.kvashnin@bk.ru

Последний раз редактировалось Аватар; 27.01.2016 в 15:50.
Илья Квашнин вне форума
Старый 27.01.2016, 17:44   #5
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Вот так правильно
Код:
if Length(s)>=1 then 
  FileWrite(t, s[1], SizeOf(str))
а так нет.
Код:
  FileWrite(t, s, SizeOf(str))
Вместо строки вы записали в файл указатель на строку и прочий "мусор" который лежит рядом с указателем.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 27.01.2016 в 17:47.
Pavia вне форума
Старый 27.01.2016, 17:53   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Вот так правильно
Код:
if Length(s)>=1 then 
  FileWrite(t, s[1], SizeOf(str))
Объясните мне глупому, почему нужно передавать строку s,
а размер брать у другой строки?! К тому же строка str перекрывает имя системной процедуры str()
Ну и окончательно, сейчас нет Delphi, но что-то мне подсказывает, что SizeOf(Строка) вернёт не размер этой строки, а размер указателя, что совсем не одно и тоже!

Вас чем Length(s)*SizeOf(char) не устраивает?
Serge_Bliznykov вне форума
Старый 27.01.2016, 17:55   #7
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Да, уж не заметил.
Код:
if Length(s)>=1 then 
  FileWrite(t, s[1], Length(s));
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 27.01.2016 в 17:59.
Pavia вне форума
Старый 27.01.2016, 18:26   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Да, уж не заметил.
я так и понял!
а мне по глазам резануло. Думал, что я что-то не знаю о современных методах в Delphi...

Код:
if Length(s)>=1 then 
  FileWrite(t, s[1], Length(s));
[/QUOTE]
Это только для AnsiString

для современных Delphi, имхо, нужно умножать длину строки на размер одного символа!
Serge_Bliznykov вне форума
Старый 27.01.2016, 18:44   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

если юзаешь VCL, то накой икс тебе сдались системные файловые функции? Особенно для текстового файла.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума
Старый 27.01.2016, 19:21   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Цитата:
если юзаешь VCL, то накой икс тебе сдались системные файловые функции? Особенно для текстового файла.
Преподу сдались, студента помиловать
Человек_Борща вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
реверс целых чисел на Си. подскажите, в чем ошибка. Kastet14 Помощь студентам 7 14.01.2010 18:08
подскажите по программе на делфи Кнопик Помощь студентам 2 02.06.2009 21:49
Подскажите плиз с DBGrid в делфи))) PUSHkiN Помощь студентам 4 24.01.2009 01:19
Подскажите по делфи Сергей07 Помощь студентам 2 25.10.2007 15:30
Кто знает компоненты MMTOOLS(Делфи 6), подскажите! vizor9 Софт 5 11.08.2007 12:30