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

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

сравнение двух нетипизированных ;файлов


reticon ©   (2002-12-20 13:20:00) 

Подскажите пожалуйста, как сравнить два нетипизированных файла, например с таким содержанием:

файл_1:

1 3 2 4 3 3 2 1 4 1 1 4 1 2 3 4 2 3 1 2
2 1 3 2 4 4 4 3 1 1 2 1 1 3 2 1 3 2 2 2

файл_2:

1 2 3 4 4 4 3 4 2 2 1 2 1 1 1 1 2 3 2 3
2 3 2 3 3 3 2 1 1 2 2 4 4 4 2 2 2 3 1 1

необходимо сравнить первую строку файла_1 с первой строкой файла_2 и
вторую строку файла_1 со второй строкой файла_2

как узнать, какие байты в строках совпадают, а какие отличаются?


[NIKEL]   (2002-12-22 23:35:00) [1]

посмотри на UBPFD


Morfein   (2002-12-22 23:21:00) [2]

Да делаешь mapping, побайтно читаешь память и сравниваешь... какие проблемы?... а вы тут спорите о том, какие файлы какой функцией читать...


reticon   (2002-12-22 23:12:00) [3]

Способ, предложенный atmospheric, не работает (если я делаю все правильно). И еще выдает ошибку 104.


Anatoly Podgoretsky   (2002-12-22 18:34:00) [4]

Тогда ты уже получил ответ выше


reticon   (2002-12-22 18:32:00) [5]

> To Anatoly Podgoretsky

Результатом сравнения должно быть, какие символы в стрроках различаются между собой


Anatoly Podgoretsky   (2002-12-21 19:00:00) [6]

Байты это сравнение двоичных файлов, а строки это текстовые файлы, в них символы


reticon   (2002-12-21 18:30:00) [7]

To mrcat

<Что должно быть результатом сравнения?

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


Kotka   (2002-12-21 16:45:00) [8]

У мя на сайте есть исходники проги, которая сравнивает файлы побайтно с помощью TFileStream.


Song   (2002-12-21 09:00:00) [9]

2reticon © (21.12.02 04:50)
Ты не ответил на вопрос mrcat © (20.12.02 13:22)
Поэтому сказать алгоритм пока нельзя.


Для   (2002-12-21 05:03:00) [10]

нетипизированныхфайлов не может быть понятия "строка"! Тогда как понять следущее:

> reticon © (20.12.02 13:20)
...
> необходимо сравнить первую строку файла_1 с первой строкой >файла_2 и вторую строку файла_1 со второй строкой файла_2



reticon   (2002-12-21 04:50:00) [11]

To atmospheric

...ну читать построчно ReadLn(f, s1); ReadLn(g, s2);

ReadLn использовать нельзя, оно используется для текстовых файлов. Т.к. файл нетипизированный, нужно юзать BlockRead.

...а потом сравнивай
for i:=1 to length(s1) do
if s1[i] = s2[i] then

А можно поподробнее?


atmospheric   (2002-12-20 13:24:00) [12]

ну читать построчно ReadLn(f, s1); ReadLn(g, s2);

а потом сравнивай
for i:=1 to length(s1) do
if s1[i] = s2[i] then
...


mrcat   (2002-12-20 13:22:00) [13]

что должно быть результатом сравнения?


Наверх

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