Войти

Показать полную графическую версию : Поиск и замена в VB.NET 2010


ashead
14-12-2011, 09:11
Помогите, пож., двоечнику решить задачу
Имеется некое множество бинарных файлов, отличающихся по наименованию и размеру. В каждом из них имеется 5 мест с относительно одинакой последовательностью байтов. Поиск этих мест ведется по, например, такому шаблону: E2 02 ?? 06 EB 00 30 A0 E3 ?? D6 ?? E5, где знаками вопроса обозначены переменные. Каким кодом повесить на клик кнопки button1 выполнение поиска и замены этой последовательности во всех 5 местах на другую, например, на E2 02 B0 06 EB 00 30 A0 E3 ?? D6 4B E5. Название файла считывается как TextBox1.Text. При ненахождении хотя бы одной из 5 последовательностей должно выдаваться сообщение. Как, впрочем, и при успешном завершении замены.

Delirium
15-12-2011, 01:31
При ненахождении хотя бы одной из 5 последовательностей должно выдаваться сообщение. Как, впрочем, и при успешном завершении замены. »
Ну это элементарные условия.

Вопрос такой - как и куда считываются данные из файлов? В какой объект(string, stream, binary и т.д.)

ashead
15-12-2011, 11:15
Delirium, большое спасибо за ответ!
как и куда считываются данные из файлов? В какой объект(string, stream, binary и т.д.)
Если бы я знал в какой надо и какой лучше! Двоечник-же полный!
Ну это элементарные условия.
С сообщением надеюсь справиться сам. А вот с Replace - полнейшее непонимание. Будь это хоть в одном учебнике - выучил бы, но ведь нетути!

ashead
19-12-2011, 12:20
Неужели действительно это неразрешимая задача?

Delirium
22-12-2011, 03:58
ashead, это разрешимая задача, но это ЗАДАЧА. А задачу необходимо решать. А мы не решаем, мы помогаем решить.
Навскидку - используем поиск в гугле - http://www.google.ru/search?sourceid=chrome&ie=UTF-8&q=C%23+%D1%81%D1%87%D0%B8%D1%82%D1%8B%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5+%D0%B1%D0%B8%D0%BD%D0%B0%D1%80%D 0%BD%D1%8B%D1%85+%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2

1 и 2-ая ссылки дадут ответы на все вопросы. Вот если и после прочтения будет что то непонятно, милости просим с кодом и вопросами, поможем.

ashead
22-12-2011, 16:18
...мы не решаем, мы помогаем решить... Вот если и после прочтения будет что то непонятно, милости просим с кодом и вопросами, поможем. »
Кое-что непонятно:
1. Зачем отправлять меня к примерам на C#, когда речь идет о VB. Да и отправлять на чужие ресурсы...
2. Зачем через гугл давать ответы, меня не интересующие: я ведь спрашивал о функции Search&Replace, а не Read&Write.
3. Почему так "добродушно" предполагается, что я не имею пользоваться поиском в Гугле.
4. К чему философские рассуждения о необходимости решать задачу вместо простого ответа типа:"Мужик, ты это... извини, но не знаю как это сделать!". Но... Если не знаешь, зачем проявлять активность?
5. "Мы" на форуме - это кто? Если о себе, то тогда лучше полностью: "Божиею поспешествующею милостию, Мы, ΝΝ, Импер... прости, Модератор... и прочая, и прочая."
6. Последний вопрос логически вытекает из двух предпоследних: "Почему Delirium на 4875 сообщений имеет только 765 спасибок (т.е. 15%, а остальное что? Такие же отписки как и в моём случае?)?"
Ответы на все эти непонятки мне в принципе известны и потому ответа на них не жду.
Спасибо всем. Вопрос свой закрываю.

Delirium
23-12-2011, 01:01
ashead, раз уж ты не поленился так развернуто описать свое недовольство, я тоже отвечу по пунктам:
Зачем отправлять меня к примерам на C#, когда речь идет о VB. »
Затем, что есть куча программ, переводящих код из C# на VB.NET и обратно, языки практически не различаются.
Да и отправлять на чужие ресурсы... »
А зачем дублировать информацию, когда она есть в свободном доступе?
я ведь спрашивал о функции Search&Replace, а не Read&Write. »
Перед тем как искать и заменять, надо прочитать файл, а ты указал, что как и куда считываются данные из файлов? В какой объект(string, stream, binary и т.д.)
Если бы я знал в какой надо и какой лучше! Двоечник-же полный! »
Почему так "добродушно" предполагается, что я не имею пользоваться поиском в Гугле. »
Я не предполагаю, я просто указал, что эта информация есть.
К чему философские рассуждения о необходимости решать задачу вместо простого ответа типа:"Мужик, ты это... извини, но не знаю как это сделать!" »
Я знаю как это сделать, более того, задача решается за 15 минут. Во первых, есть правила раздела в прикрепленной теме уголок ленивого программиста (http://forum.oszone.net/thread-223125.html). Во вторых, у меня нет сейчас времени на решение этой задачи, поэтому я указал на варианты ее решения в интернете.
"Мы" на форуме - это кто? »
Смотри выше ссылку "уголок ленивого программиста"...
"Почему Delirium на 4875 сообщений имеет только 765 спасибок »

Ну это уже не мне решать. Иногда напостишь 50 сообщений, прежде чем найдется решение проблемы. Для сравнения приведу тебе статистику администратора портала Vadikan:

Сообщения: 23835
Благодарности: 3202
Он тоже "просто постит"? :)


По твоему вопросу(опять же нашел в гугле): Read and replace in binary file (http://stackoverflow.com/questions/6512013/c-sharp-read-and-replace-binary-data-in-text-file) - поиск и замена бинарных данных.

Delirium
23-12-2011, 13:55
Чет меня закусило сообщение ashead. Будь добр, посмотри на мои ссылки внизу каждого моего сообщения "Мои проекты". Я полагаю, это малость посложнее будет, чем чтение файла и замена в нем части символов.




© OSzone.net 2001-2012