Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как сделать, чтобы ворд обрабатывал строки более 255 символов  (Прочитано 14058 раз)
0 Пользователей и 5 Гостей смотрят эту тему.
monrus
Опытный

ru
Offline Offline

« : 15-10-2006 15:41 » new

Как сделать, чтобы ворд обрабатывал строки более 255 символов
« Последнее редактирование: 17-12-2007 17:25 от Алексей1153++ » Записан
RomCom
Опытный

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 15-10-2006 23:55 » 

Никак.
Это ограничение для строк поиска и замены.
Записан

R.O.M.C.O.M.: Robotic Operational Mathematics and Ceaseless Observation Machine
monrus
Опытный

ru
Offline Offline

« Ответ #2 : 16-10-2006 14:54 » 

А какой вариант можете предложить?
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #3 : 16-10-2006 17:53 » 

открой любой документ и попытайся найти строку длинее 255 символов. сам ворд это сделать не даст. есс-но, что заставить его это сделать из дельфей - тем более не удастся.

поэтому вариантов аж три.

1. конвертить текст в rtf, например, грузить в TRichEdit, искать/менять, и конвертить обратно.
2. нарыть доковский формат и работать напрямую с файлом (черевато).
2. не юзать ворд вообще.
« Последнее редактирование: 16-10-2006 17:55 от x77 » Записан

x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #4 : 16-10-2006 17:58 » 

вообще в варианте с конвертацией - я бы советовал конвертить в html. тогда можно будет поднять MSXML-овские парсеры и работать с DOM-структурой документа. я сильно подозреваю, что такие мелочи, как поиск и замена - там есть уже готовые.

З.Ы. а по здравом размышлении - даже DOM там нафиг не нужен. всё сведётся к ReplaceString (... [rfReplaceAll]);
« Последнее редактирование: 16-10-2006 18:02 от x77 » Записан

monrus
Опытный

ru
Offline Offline

« Ответ #5 : 16-10-2006 19:01 » 

Ладно - тогда буду частями вставлять. Ворду - лажа!
Записан
monrus
Опытный

ru
Offline Offline

« Ответ #6 : 16-10-2006 19:02 » 

Хотя - если попробовать через буфер обмена - ведь так вставляются большие, разные куски информации.
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #7 : 17-10-2006 10:17 » 

monrus, вставлять? так вставлять, по идее, ничто не мешает какие угодно куски. мне показлось, что речь идёт о поиске/замене.
Записан

monrus
Опытный

ru
Offline Offline

« Ответ #8 : 17-10-2006 13:41 » 

нет - тебе правильно показалось, просто если нет такого варианта - то надо модифицировать Улыбаюсь
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #9 : 17-10-2006 15:53 » 

monrus, а если надо не только вставить, но и найти строку >255? тогда как? тоже по кускам?

я бы подумал о конвертации всё-таки. грубо говоря,
Код:
doc.Open ('bla-bla-bla.doc');
doc.SaveAs ('tmp.html');
sl := TStringList.Create;
try
  sl.LoadFromFile ('tmp.html');
  sl.Text := ReplaceString (sl.Text, ...);
  sl.SaveToFile ('tmp.html');
finally
  sl.Free;
end;
doc.Open ('tmp.html');
doc.SaveAs ('bla-bla-bla.doc');

я не помню вызовы ворда для импорта/экспорта, но логика понятна, я думаю. суть в том, что вордвоский хтмл-формат изначально делалася именно для переноса документов без потери форматирования (делать в нём веб-странички - безумие полное). и поэтому имеет смысл приводить доковский файл, по-сути, к текстовому, и спокойно с ним работать, как с текстом. а потом "вернуть взад".

но хозяин - барин, конечно Улыбаюсь
« Последнее редактирование: 17-12-2007 17:27 от Алексей1153++ » Записан

DemonicAlligator
Гость
« Ответ #10 : 18-10-2006 10:16 » 

ага... тока если у тя использованы в этом куске текста разные форматы, или просто разные языки - трындец... там такие навороты, что и с бутылкой и без не разобраться...  Перекур Пьем пиво, но без вас
Записан
monrus
Опытный

ru
Offline Offline

« Ответ #11 : 18-10-2006 13:10 » 

нет - слишком замудрено Улыбаюсь. там строка которая ищется - 4 символа, просто один момент где надо очень много всего вставить было.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines