Конференция "Начинающим" » Поиск в файле
 
  • Dark © (29.03.08 19:06) [0]
    Подскажите, какие есть способы поиска и дальнейшей работы в файле? Допустим мне нужно найти строку и поставить в её конец курсор, затем перевести его на пару строк ниже(просто изменение положения, а не вставка строки), а затем поставить курсор опять в конец строки и перевести её уже с добавкой новой строки.. Собственно здесь используются все методы..и считывание, и поиск, и запись...как это все реализовать?
  • Dark © (29.03.08 19:08) [1]
    Ещё добавлю, это делается для редактирования html страниц, но не во всех будет определенный кусок кода(то, что мы будем искать). Поэтому мне надо ещё делать и проверку, найдено или нет..А перечислить все файлы, в которых ведется поиск нельзя, т.к. будут постоянно добавляться новые
  • Сергей М. © (29.03.08 19:10) [2]
    Описанное не имеет ничего общего с "работой в файле", хотя бы потому что в файле нет никакого "курсора".
  • Andy BitOff © (29.03.08 19:19) [3]
    > [2] Сергей М. ©   (29.03.08 19:10)

    Ну, курсором можно считать переменную, в которой будет храниться указатель на текущую позицию, от начала файла.
  • Сергей М. © (29.03.08 19:30) [4]

    > Andy BitOff ©   (29.03.08 19:19) [3]


    Следует просто формализовать задачу, а не уподобляться чукче ("что вижу, то пою")
  • palva © (29.03.08 19:37) [5]

    > Dark ©   (29.03.08 19:08) [1]

    По-моему, стоит прочитать файл полностью в оперативную память (например в строку) и после всех правок перезаписать на диск.
  • Dark © (29.03.08 19:37) [6]

    > Сергей М.

    Если ты сразу все понял, зачем разводить флуд?

    > Andy BitOff ©

    Ага, ты правильно выразился
  • Dark © (29.03.08 19:39) [7]

    > palva ©

    Допустим, я его считываю в Мемо, в нем есть ф-ции поиска и работы с позицией курсора?
  • trubin © (29.03.08 19:55) [8]
    Как вариант используй TFileStream. С помощью его методов Seek, Write, Read и свойств Position, Size реализуй нужный тебе функционал.
  • Сергей М. © (29.03.08 19:59) [9]

    > Dark ©   (29.03.08 19:37) [6]
    >
    >


    Если тебе нужно найти строку N и вставить пустую строку в позицию N+2, то так и скажи)
  • palva © (29.03.08 20:30) [10]
    > Допустим, я его считываю в Мемо, в нем есть ф-ции поиска и работы с позицией курсора?
    А для чего читать в Мемо? Неужели вы хотите визуально наблюдать процесс обработки и вмешиваться в него с клавиатуры? Ну да дело ваше.
    И вопрос какой-то странный. Несомненно, кто-то написал такие функции. Не думаю, что они представляют какую-то ценность, поскольку любой программист напишет их за 10 минут. Хотя наверняка есть программисты, которые с гордостью выложили такие функции в Интернет, не думаю, что их продукцию следует разыскивать и использовать. Самому надежнее написать.
  • trubin © (29.03.08 20:48) [11]

    > Подскажите, какие есть способы поиска и дальнейшей работы
    > в файле? Допустим мне нужно найти строку и поставить в её
    > конец курсор, затем перевести его на пару строк ниже(просто
    > изменение положения, а не вставка строки), а затем поставить
    > курсор опять в конец строки и перевести её уже с добавкой
    > новой строки.. Собственно здесь используются все методы.
    > .и считывание, и поиск, и запись...как это все реализовать?
    >


    Не совсем понял, "строка" в данном случае это последовательность допустимых символов заканчивающаяся символом возврата каретки?

    Если да, то какое это отношение имеет непосредственно к парсингу html - файла, там во внимание следует принимать другие вещи - тэги например.
  • Dark © (29.03.08 21:10) [12]
    Парсинг html здесь нипричем, я его буду редактировать(html файл), как текстовый. В моем случае это удобнее. СОбственно пока со всем разобрался. Но вот возник вопрос, везде разные кодировки..как в делфи настроит ьу своей программы кодировку виндоуз? А то русские не ищет символы, только латинские и цифры. Походу у меня в файлах и в делфи разные кодировки
  • Dark © (29.03.08 21:23) [13]
    Неужели нету возможности настройки кодировки проекта?
  • Palladin © (29.03.08 21:41) [14]
    кодировку нужно не у проекта менять, а у набора символов с которым работаешь.
  • Dark © (29.03.08 21:50) [15]
    Ладно, тогда как у RichEdit заменить кодировку? Облазил все параметры lines и text...не нашел..f1 не помагает
  • Anatoly Podgoretsky © (29.03.08 21:53) [16]
    > Dark  (29.03.2008 21:50:15)  [15]

    Свойство Font, но толку то менять кодировку?
    Надо не кодировку менять, а приводить к понимаемой.
  • Dark © (29.03.08 21:55) [17]
    Понимаемую я знаю...на неё и хочу поменять.
  • Dark © (29.03.08 21:59) [18]
    Спасибо, оно!
  • Dark © (29.03.08 22:15) [19]
    TFontCharset - нашел по нему список кодировок в хелпе..возник вопрос, потому что ничего типа win1251 я там не нашел: что является прототипом win1251 кодировки? Да, и поддерживает RichEdit кодировки только с окончанием _CHARSET, а на остальные типа fcsUnicode ругается. Мои действия: гружу файл в ричэдит,добавляю строки,сохраняю, получаю абракадабру....хотя исходный файл выглядит нормально
 
Конференция "Начинающим" » Поиск в файле
Есть новые Нет новых   [134433   +22][b:0][p:0.001]