Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Кодировка файла... [D6]


Mozart ©   (2003-01-03 13:44:00) 

Есть такая проблемка: не могу в Дельфи 6 загрузить файл (с абсолютно левым набором символов) чтобы потом его закодировать...
В Мемо грузится только 4 первых символа, которые похожи на нормальные буквы... Остальные почему-то не распознаёт.....
Если нужен файл, могу отослать на мыло..


Mozart   (2003-01-03 21:57:00) [1]

Да кстати: воспользовался array of Byte в качестве S, добавил try, finally, исправил некоторые помрки в твоём примере....


Mozart   (2003-01-03 21:53:00) [2]

Всем огромное спасибо, кто помогал!!
Особенно Maksss"у . Все работает по твоему методу, просто супер. Вы сделали очень хорошее дело!


Programist21   (2003-01-03 21:03:00) [3]

Мой совет - не юзай Мемо. У меня тоже с ним траблы были при шифровании...


Mozart   (2003-01-03 20:52:00) [4]

А можешь выложить пример?
или так объяснить, я думаю, это может пригодится, т.к. сейчас для меня самое главное - быстродействие...


Maksss   (2003-01-03 20:38:00) [5]

если сильно большой (больше 5 мегов) я делаю через filestream но там сложнее с позицией чтения


Mozart   (2003-01-03 20:34:00) [6]

Maksss
спасибо, попробую...
кста: MAxiMum, у твоего метода есть небольшая проблемка:
если файл очень большой(несколько строк), то прога просто подвисает, выполняя while not Eof(FFile) do. Но тоже спасибо, а то я не знал как в Дельфи загрузить простые файлы, оказалось - почти также как в старом добром паскале..


Maksss   (2003-01-03 19:59:00) [7]

этот файл нельзя грузить в мемо и прочие едиты!!
провлема в следующем ,что они все обрывают чтение на 2 последовательных битах {это нех(00 00)} грузи в переменную (стринг пчар пбит) обрабатывай и если это нечто похожее на текст выгружай в мемо если нет то эту переменную овратно в файл
var f : MemoryStream;
s :string;

f := TMemoryStream.Create;
f.loadfromfile("c:\filename.dat");
f.read(s,1,f.size);
{обравотка твоего файла}
f.clear;
f.write(s,1,Length(s))
f.savetofile("c:\newfilename.dat");
f.free;


Mozart   (2003-01-03 17:48:00) [8]

файл нужно именно закодировать, но Мемо не воспринимает нифига символов этого файла, поэтому через Мемо его загрузить не смог..
Короче - задача основная в том, как его прочитать...
а потом видоизменять по определённому алгоритму.


MAxiMum   (2003-01-03 14:44:00) [9]

Я понял нужно разкодировать файл. Если нет, то убери Decode.
Для начала хотя бы изучи процедуры AssignFile, Reset/Rewrite/Append и Close. А там все будет очевидно!!!
Например:
var FFile: TextFile {файловая переменная}; S: String;

begin
AssignFile(FFile, "file.dat"{имя файла});
Reset(FFile); //открытие
while not Eof(FFile) do
begin
Read(FFile, S);
Memo1.Lines.Add(Decode{функция для разкодирования}(S)
end;
CloseFile(FFile);


Anatoly Podgoretsky   (2003-01-03 14:17:00) [10]

Так у тебя наверно не текстовый файл


Mozart   (2003-01-03 14:02:00) [11]

в МЕМО, обычным способом :) понимаю, что смешно....
но других методов не знаю..


Anatoly Podgoretsky   (2003-01-03 13:57:00) [12]

Как же ты его грузишь


dkDimon   (2003-01-03 13:45:00) [13]

Присылай, разбермся... хотя я по ходу дела знаю в чем проблема... но присылай файл и код...


Наверх

Титульная страница Поиск, карта сайта Написать письмо