Не открывается файл rtf openoffice общая ошибка ввода вывода
В мой дом пришла беда. Сегодня утром вдруг не смог открыть важный OpenOffice файл, в *.sxc формате (Аналог таблицы MS Excel).
Спасибо за предложение, но я Офис полностью снёс, а потом по новой поставил. Причём обновлённую версию. Так что такая вероятность практически равна нулю. Однако я ещё вечером попробую на домашней машине открыть.
Докладываю о результатах: файл мне поднять не удалось, я его заменил на "бэкапный", который я, из-за извечной лени, не обновлял с 31-го октября. Потихоньку восттанавливаю данные. Пересохранил документ из устаревшего *.sxc формата (OpenOffice 1.0) в современный *.ods Как-то я раньше не уделял этому внимания.
Что удалось по ходу выяснить на форумах поддержки: оказывается *.sxc и *.ods файлы суть zip архивы (век живи - век учись). В принципе, их можно распаковать WinRar и другими прогами и покоматься в полученных xml файлах. По некоторым данным, запоротые документы можно восстановить встроенной "лечилкой" WinRar. Мне, вроде, удалось проделать такой фокус, но открыть всё равно не смог. В моём случае, видимо сыграло роль то, что файл был запоролен. Иначе я бы смог его починить.
И напоследок: Господа, и, особенно, дамы: не забывайте про бэкапы, чтобы не было потом мучительно больно. Одна копия хорошо, а три - лучше.
Вопрос. А почему-бы не сохранять/работать в OpenOffice с файлом в формате excel (.xls), а не OpenOffice ? Тогда универсальность получается (на большее число систем файл портабелен), и восстанавливалок очень много для .xls.
Я особо не заметил разницы между работой с Excel-форматом и родным .ods в OpenOffice.
imhoman101
не всегда это нужно. я работаю и с офисом от MS и с OpenOffice, так бывает, что сохраняю в формат *.odt.
Зачем мне совместимость с кем-то и чем-то, если я этот файл открою, а он нужен только мне?
Эту дискуссию можно долго продолжать, ссылаясь на различные преимущества\недостатки каждого формата, методов защиты и т.д. Кому как удобно или кто как привык - тот так и работает. Тут подход индивидуальный
upd:
2 Cartman: я это и имел ввиду
Для споров что лучше/хуже раздел голосований имеется.
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум. © Plague
Вы можете исследовать проблему еще более глубже - открывть rtf-файл в Блокноте. И поисследовать все стандартные управляющие элементы открытого формата RTF. В Блокноте RTF-формат просматривается очень хорошо, точно также как и HTML-формат. Далее сравнить все со спецификациями, опубликованными в Википедиа, сделать вывод, кто прав, кто неправ, MS или OO. (Можно еще написать статью по этому поводу)) Ну, и в конечном, итоге что-то предложить изменить в нашем софте (обязательно что-то конкретное, на конкретном примере и с упрощенным документом), чтобы она что-то выводила более правильное, более оптимальное, читаемое всеми программами.
Если таблица не помещается на страницу, то можно либо уменьшить шрифт, либо сократить число выводимых полей.
Есть успешный опыт.
Получен в жутких муках. Месяц (а то и два) жизни потерял летом этим.
Правда интеграция с Libre Office. Но думаю что и к Open Office подойдет.
"Простой софт" и форум помог. Спасибо. Но не во всем.
По заданному вопросу. Написал макрос, вставил в Libr-у в автозапуск при открытии документа. Он все делает.
Напишу все подробно 28 дек. Если получится, то 26.
Кстати почему выбран Open? Libre больше похож на MS. Людям легче переходить. Я поэтому его выбрал.
Вы можете исследовать проблему еще более глубже - открывть rtf-файл в Блокноте. И поисследовать .Ivan думаю что не совсем так. Мы не должны ничего исследовать. Если есть в программе понятие rtf шаблон, то мы не должны исследовать его формат. Мы должны написать в Worde или там в Open.
Привет [SELECT . ]
и получить прогнозируемый результат.
Сформированные в Вашей программе документы в Worde и в Libre выглядят по разному.
А вот rtf записанные в Worde в Libre выглядят также и наоборот.
Кто не прав?
Я сейчас говорю про версию 482. Если все изменилось, то извините.
.
Да я тоже столкнулся с этим. Но ошибка была другая.
Я заметил что лучше делать шаблон в 2003 офисе.
Так и делаю.
Причем шаблон храню в doc. ЕГО (doc) редактирую.
И окончательный вариант сохраняю в rtf. Ну и doc храню.
Потом rtf не редактирую!
Очень тонкий процесс. Шаг вправо/влево и труба шаблону.
Если так, то сохраняю в txt. Открываю в Word-e. Форматирую.
А ещё если в [SELECT . ] встречаются русские буквы то нужно исхищряться.
То я напишу что Я в ЛЮБОЙ программе работающей с rtf форматом вижу(пишу) SELECT Привет WHERE
и "Простой софт" должен в ответ в документ вставить Привет
Есть успешный опыт.
Получен в жутких муках. Месяц (а то и два) жизни потерял летом этим.
Правда интеграция с Libre Office. Но думаю что и к Open Office подойдет.
"Простой софт" и форум помог. Спасибо. Но не во всем.
По заданному вопросу. Написал макрос, вставил в Libr-у в автозапуск при открытии документа. Он все делает.
Напишу все подробно 28 дек. Если получится, то 26.
Кстати почему выбран Open? Libre больше похож на MS. Людям легче переходить. Я поэтому его выбрал.
Uspenskiy , буду очень признателен, если Ваше решение поможет решить поставленную задачу! Сам на шаблоны и попытки с ними разобраться потратил не один день. В макросах не силён, и кое-где пришлось использовать обходные пути, навроде тех, что выше по тексту подсказал Иван Валерьевич с уменьшением шрифта и т.д., но остались шаблоны, где нужно использовать более радикальные методы. Надеюсь, Вы найдёте в предновогодней суете время поделиться драгоценным опытом)
OpenOffice выбран задолго до внедрения Учёта пациентов, поэтому с переводом пользователей проблем нет. Но на будущее последую Вашему совету и обращу более пристальное внимание на Libre. Спасибо.
Моя конфигурация
Сервер: Windows Server 2012, MS SQL Express 2012
Клиент: Windows XP Pro, Учет пациентов 2.482, Libre Office 5.0.2.2
В Libre Write cоздан такой вот макрос (см. в конце)
Затем в Сервис -> Макросы -> Управление макросами -> Libre Office Basic -> Назначить -> События -> Активизация документа -> Макрос -> PrintDog2
Таким образом имеем макрос который начинает работать при активизации ЛЮБОГО документа. Это плохо, но по другому я не смог. В формате rtf макросы не хранятся. Если не так, то поправьте.
Краткое описание макроса
Поскольку он выполняется всегда, то в начале выполняется проверка является ли документ, документом сформированным из определенного шаблона Учета пациентов.
1. Проверяется путь. В настройках кнопки в Учете пациентов для каждой команды DocumentByTemplate можно указать путь куда сохраняется сформированный документ. У метя (в макросе) это C:\TEMP
2. Проверяется имя документа. Там же в параметрах DocumentByTemplate можно указать имя получаемого документа. У меня DOGOVOR_FOR_PRINT или DOGOVOR_FOR_EDIT
Если условия не выполняются, то макрос ничего не делает.
Если формируемый документ в имени имеет текст DOGOVOR_FOR_PRINT, то макрос дополнительно печатает документ два раза и закрывает документ. Это такой аналог команды PrintDocumentByTemplate для печати двух копий.
Вам поменять константы в описаниях
Const TextZakladki As String = "Const_НАША_ОРГАНИЗАЦИЯ" 'Это текст закладки в шаблоне. Если он есть в документе, то это шаблон, а не документ. Не печатаем
Const PathDogovorForPrintOnly As String = "C:\TEMP" 'Часть пути где хранятся договора для печати
Const NameDogovorForPrintOnly As String = "DOGOVOR_FOR_PRINT" 'Часть имени файла договора для печати
Const NameDogovor As String = "DOGOVOR_FOR_EDIT" 'Часть имени файла договора для редактирования
Индекс в getTextTables().getByIndex(1)) (1 – это вторая таблица)
И выкинуть печать двух копий.
Написал много. Значит будет не понятно Спрашивайте.
Sub PrintDog2
' Меняет шрифт документа, изменяет ширину 2 таблички, печатает два раза документ, и закрывает Libre
' Нужно его назначить на событие "Активизация документа"
Const TextZakladki As String = "Const_НАША_ОРГАНИЗАЦИЯ" 'Это текст закладки в шаблоне. Если он есть в документе, то это шаблон, а не документ. Не печатаем
Const PathDogovorForPrintOnly As String = "C:\TEMP" 'Часть пути где хранятся договора для печати
Const NameDogovorForPrintOnly As String = "DOGOVOR_FOR_PRINT" 'Часть имени файла договора для печати
Const NameDogovor As String = "DOGOVOR_FOR_EDIT" 'Часть имени файла договора для редактирования
Dim PathName As String
PathName = ThisComponent.GetURL()
Sub SetTableOptimumWidth ' Колонки второй таблички оптимизирует по ширине
Dim oDispHelper 'Dispatch helper
Dim oFrame 'Текущций фрейм окна (window frame)
Dim oTable 'Первая таблица в документе
Dim oVCursor 'Видмый курсор
Dim s$
oTable = ThisComponent.getTextTables().getByIndex(1)
ThisComponent.getCurrentController().select(oTable)
oVCursor = ThisComponent.getCurrentController().getViewCursor()
oVCursor.gotoEnd(True)
oVCursor.gotoEnd(True)
oFrame = ThisComponent.CurrentController.Frame
oDispHelper = createUnoService("com.sun.star.frame.DispatchHelper")
s$ = ".uno:SetOptimalColumnWidth"
oDispHelper.executeDispatch(oFrame, s, "", 0, Array())
oVCursor.goDown(1,False)
End Sub
'********************************
Sub SetDocumentTimes ' Устанавливает шрифт Times во всем документе
Sub Test
Dim Props(0) As New com.sun.star.beans.PropertyValue
msgbox Props(0).dbg_properties
Props(0).Name = "CopyCount" : Props(0).Value = 2
ThisComponent.print(Props())
End Sub
И еще некоторые комментарии
1.
описанный выше макрос не будет работать при команде PrintDocumentByTemplate.
Так как при печати у документа нет имени. Я удивился .
Функция ThisComponent.GetURL() вернет пустое значение
2.
Проверка по имени папки с документом и имени документа нужна что бы из папки C:\TEMP (в моем случае) можно было открывать другие документы Libr-ой
и
Что бы при открытии этих сформированных документов из другой папки макрос также не вызывался.
Для сохранения в архиве документов я их автоматом переношу в другое место.
3. В версии 350 или 482 (не помню) появился такой глюк
При обращении к константе первый раз (после запуска программы) константа в шаблон подставляется. при обращении в дальнейшем вместо константы пустота (или ошибка не помню).
Обошел написанием пользовательской функции на сервере SQL
dbo.Const(TextParam)
в которой собственно константы и храню. И вызываю соответственно
dbo.Const('Const_НАША_ОРГАНИЗАЦИЯ') или
dbo.Const('Const_НАШ_АДРЕС') и т.п.
Возможно сейчас все исправлено.
И САМОЕ ГЛАВНОЕ!
Всех с Новым Годом!
OMENa и Ivana и всю команду особенно. Спасибо вам.
Кроме традиционного: здоровья, счастья, денег и т.п.
Желаю "В новогодние праздники не работать"
Спасибо за теплые слова! И Вас с наступающим!
Спасибо, что с нами, за интересные вопросы, за идеи для развития
* Все доступные в данный момент версии LibreOffice можно увидеть в списке Available Versions на странице закачки. Разработчики поддерживают только текущие версии, а поддержку более старых осуществляют сертифицированные партнёры TDF.
В проекте LibreOffice существуют две ветви (branch, version) различающиеся между собой стадией разработки проекта:
LibreOffice Fresh - версия предназначена для опытных пользователей и специалистов. В ней появляются и отрабатываются новые решения, поэтому её применение для ответственных задач не рекомендуется.
LibreOffice Still - версия рекомендуемая для массового применения, в том числе на серверах и предприятиях.
ПРИМЕЧАНИЕ - Portable (переносимые) сборки могут запускаться с любого доступного по записи носителя, но отсутствие следов их работы на вашей машине не гарантируется.
- Writer — текстовый редактор;
- Calc — редактор электронных таблиц;
- Impress — программа подготовки презентаций;
- Base — СУБД;
- Draw — графический редактор;
- Math — редактор формул.
Это список ФО для ориентировки пользователей. За десять лет вы должны были изучить Правила форума и научится не задавать бессмысленных вопросов (флуд).
Хочется получить эти опции именно используя portable версии.
Без взгляда на хекс-структуру файла можно предположить его повреждение.
stormlord666
В лоб никак ибо нет библиотек оболочки за сиё отвечающих, но можно через Sen to . сыграть подставив там симлинк на пустую заготовку, а после сохранить бумагу с иным именем. Только не забудьте переименовать. Но, это если хотите возиться с настройками оси.
Надо посмотреть содержимое, но они должны быть очень высоки, хотя M$ меняла спецификацию RTF с выходом каждой новой версии своего Офиса. Скопируйте его в другое место, а старую копию удалите чтобы удалился служебный файл индикации повреждений и попробуйте снова открыть. Не поможет - придётся искать сей мусор и чистить вручную.
Служба "09", она же главный отвечатель
разговор непосредственно с разработчиком.
звонить туды, там скажут.
Программы не обязаны писать кучу мусора в виде временных файлов. Да и часто процесс редактирования идёт в памяти, а если у вашей машины столь слабый БП что она теряет данные с первого же чиха в розетке это ваша вина, ставьте бесперебойник и не сваливайте свои недоработки на чужую голову. Пока во всём том, что вы тут написали ничего конструктивного нет, только оправдания из серии "Это кирпич виноват что мне голову упал!". Сами небось выбирали железо по принципу "Берём самое дешёвое, для секретутки хватит!" а скупой платит дважды.
Добавлено:
Да, и кстати я у себя даже при дрянной электросети её провалов не вижу - БП взяты с запасом по току, так что провалы съедают их входные фильтры.
Суть проблемы
Благодаря повсеместному использованию и широкому диапазону возможностей, компьютерные устройства на базе операционной системы «Windows» применяются во всех сферах нашей жизни: управление производственными процессами, обслуживание офисов, решение консультационных и финансово-экономических задач, участие в научном и образовательном процессе, создании средств коммуникации, широчайший выбор игровых платформ и развлечений и т.д.
В домашних условиях для каждого конкретного пользователя персональные компьютеры и другие устройства решают не менее важные задачи: создание и обработка важных документов, хранение личной регистрационной информации, получение и отправка электронной почты, редактирование и форматирование фото и видео файлов, социальное общение, формирование досуга и многое другое.
Одним из основных элементов, отвечающих за обработку и хранение информации пользователя отвечают внутренние хранилища данных: твердотельные накопители «SSD» и жесткие диски «HDD» . Они обладают необычайно высокой скоростью обработки информации и имеют значительный внутренний объем дискового пространства для хранения любого массива данных.
Однако, количество хранимой информации, находящейся у пользователя, с каждым годом, неуклонно растет. И как следствие, емкости внутренних дисковых хранилищ бывает часто недостаточно. Если определенные файлы используются довольно редко (например, личные фото и видео альбомы), а также резервные копии данных или конфиденциальные файлы пользователя – то оптимальным средством для их хранения являются внешние подключаемые диски.
Соединяясь с персональным компьютером при помощи кабеля, они предоставляют доступ ко всей информации пользователя в любой момент. Однако не находятся в постоянном контакте с компьютером и хранятся отдельно. Такой способ хранения данных позволяет быть уверенным в их сохранности, в случае выхода из строя основного жесткого диска компьютера. Ввиду постоянной эксплуатации внутренних дисков вероятность их выхода из строя гораздо выше, чем у внешних накопителей. А также во внутреннем хранилище компьютера освобождается свободное место, используемое пользователем для решения своих актуальных задач.
Однако, ситуация, связанная с использованием внешних накопителей, может помимо всех своих положительных качеств иметь и отрицательные. Как и любые другие устройства, внешние накопители подвержены сбоям или поломкам. Ответьте для себя на несколько простых вопросов. Как часто вы подключаете свои внешние накопители к компьютеру? Раз в месяц или один раз в год? Как часто вы проверяете работоспособность вашего диска и возможность доступа к хранимой на нем информации?
Что представляет собой ошибка ввода вывода с устройства?
Ошибки ввода вывода с устройства довольно распространены. Чаше всего мы связываем их с проблемами аппаратного обеспечения, такими как неправильный кабель, сбой с запоминающим устройством или неверно сконфигурированный драйвер. Исходя из вышесказанного, существует несколько различных способов для исправления ошибки ввода вывода с устройства. Устранение большинства указанных проблем не займет у вас много времени и их достаточно легко осуществить.
Прежде чем начать исправление ошибки ввода вывода с устройства, выполните перезагрузку операционной системы, а затем повторите попытку. Зачастую, такого действия бывает вполне достаточно для устранения возникшей ошибки. Но если ошибка не исчезла, то приступайте к выполнению нижеописанных способов. После каждого действия проверяйте, исправлена ли проблема возникновения ошибки. Если нет, то переходите к следующему способу.
1. Кабели
Вам нужно выполнить полную проверку, выявляя и проверяя уязвимые места, которые могут послужить причиной возникновения ошибки ввода вывода.
Первое действие, которое нужно сделать – просто отрегулировать кабели подключения. Проверьте кабель и механизмы крепления на наличие повреждений, разломов, сколов или загрязнений. Отключите, а затем заново подключите кабель, соединяющий внешний накопитель с компьютером. Выполните такую проверку на обоих его концах, а затем повторите попытку доступа к диску.
Если кабель после повторного подключения не работает, то используйте другой «USB-кабель» и повторите попытку. Если вы не уверены в работоспособности кабеля, соедините его с другим внешним устройством (в работоспособности которого вы полностью уверены) и подключите его к вашей системе. Если он работает, то вы знаете, что кабель не испорчен, и возможно у вас другая причина возникновения ошибки.
2. «USB-порт»
Если первоначальная проверка показала, что причина возникновения ошибки находится не в кабеле, то попробуйте использовать альтернативный порт для подключения накопителя. Большинство современных систем имеют несколько «USB-портов» , так как многие внешние подключаемые устройства используют «USB-соединение» . Кроме того, проверьте, насколько чистые ваши «USB-порты» . Если они пыльные или сильно загрязнены, то необходимо их полностью очистить, стараясь не повредить контакты, а затем повторите попытку.
3. Драйвера
Еще одно базовое, но забытое исправление ошибки ввода вывода с устройства – это обновление драйверов в вашей системе. Операционная система «Windows 10» должна автоматически обновлять все ваши драйвера. Вопрос о постоянных обновлениях был очень болезненным моментом для многих пользователей, когда корпорация «Microsoft» выпустила операционную систему «Windows 10» . Теоретически, система, постоянно обновляющая драйвера, не имеет изъянов. И у вас никогда не должно возникать проблема с драйверами в «Windows 10» .
Но на практике ситуация немного иная. «Windows» не всегда поддерживает версии драйверов в актуальном рабочем состоянии, а иногда постоянная система обновления драйверов просто не работает. В таком случае, вам может помочь программы сторонних производителей, осуществляющие мониторинг системы на наличие устаревших драйверов. Перейдите на сайт любого разработчика, загрузите и установите программу (в некоторых случаях потребуется ваше разрешение для антивирусной системы безопасности компьютера), а затем выполните сканирование системы на наличие устаревших драйверов.
Не удивляйтесь, если по результатам сканирования вы обнаружите большое количество устаревших версий. Во многих случаях соответствующие приложения и службы все еще работают нормально. Просто программа сканирования уведомляет вас, что производитель выпустил более новую версию драйвера и она доступна для скачивания и установки. Найдите драйвер для вашего устройства и обновите его, а затем повторите попытку использования внешнего накопителя.
4. Приложение «Chkdsk»
Хотя ошибки ввода вывода с устройства, в основном, связаны с повреждением оборудования, мы можем попытаться использовать интегрированное системное приложение для устранения проблемы. Приложение «chkdsk» проверяет файловую систему на наличие ошибок и исправляет их.
Для запуска процесса проверки и исправления ошибок необходимо открыть приложение «Командная строка (администратор)» . В операционной системе «Windows 10» представлено много различных способов для запуска командной строки с правами администратора. Мы покажем вам только несколько способов, и вы решите какой из них вам наиболее подходит для дальнейшего применения.
Читайте также: