Пример процедуры по поиску и замене текста
На компьютере должна быть установлена программа openoffice или libreoffice.
Программный код ниже ищет определенный текст в файле, замещает его и сохраняет файл.
&НаКлиенте Процедура ОтредактироватьOpenOfficeWriterНаСервере() // запустим open office Попытка WriterПриложение = Новый ComОбъект("com.sun.star.ServiceManager"); Исключение Сообщить("Не установлен open office"); КонецПопытки; scr = Новый ComОбъект("MSScriptControl.ScriptControl"); scr.language = "javascript"; scr.eval("MassivParametrov = new Array()"); ПараметрыПриложение = scr.eval("MassivParametrov"); scr.AddObject("OpenOffice", WriterПриложение); scr.eval("MassivParametrov[0]=OpenOffice.Bridge_GetStruct('com.sun.star.beans.PropertyValue')"); scr.eval("MassivParametrov[0].Name='Hidden'"); scr.eval("MassivParametrov[0].Value=true"); // откроем документ Desktop = WriterПриложение.CreateInstance("com.sun.star.frame.Desktop"); Путь = ПеревестиПутьВФорматOpenOffice("G:test.odt"); // процедура ниже WriterФайл = Desktop.LoadComponentFromURL(Путь, "_blank", 0, ПараметрыПриложение); //WriterФайл.addActionLock(); ЗаменаЗначений = WriterФайл.CreateReplaceDescriptor(); ЗаменаЗначений.SearchString = "ЗаменяемыйТекст"; ЗаменаЗначений.ReplaceString = "ЗамещающийТекст"; WriterФайл.ReplaceAll(ЗаменаЗначений); // файл сохраняется автоматически КонецПроцедуры
Оставить комментарий