Восстановить файл .docx из SAXParseException: «Пространство имен для pic не определено» - PullRequest
0 голосов
/ 09 сентября 2018

Я не могу открыть файл .docx, который я сохранил на USB-накопителе. Я получаю следующую ошибку, и LibreOffice не открывает документ:

File format error found at 
SAXParseException: "No namespace defined for pic"
SAXParseException: '[word/document.xml line 2]: Namespace prefix pic on txbx is not defined
', Stream 'word/document.xml', Line 2, Column 30767(row,col).

Есть ли способ восстановить файл?

1 Ответ

0 голосов
/ 09 сентября 2018

Распакуйте файл .docx. Если вы не знаете, как это сделать, проверьте это здесь:

https://superuser.com/a/1356829/707698

В распакованном каталоге найдите файл word/document.xml и откройте его в текстовом редакторе. Во второй строке вы увидите что-то вроде:

<w:document xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" 
xmlns:v="urn:schemas-microsoft-com:vml" 
xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" 
xmlns:w10="urn:schemas-microsoft-com:office:word" 
xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" 
xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" 
xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" 
xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" 
mc:Ignorable="w14 wp14">

Вы должны включить в этот оператор следующий атрибут:

xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture"

После этого у вас будет что-то вроде этого:

<w:document xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" 
xmlns:v="urn:schemas-microsoft-com:vml" 
xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" 
xmlns:w10="urn:schemas-microsoft-com:office:word" 
xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" 
xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" 
xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" 
xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" 
xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture" 
mc:Ignorable="w14 wp14">

Теперь вам просто нужно пересобрать файл .docx из распакованного каталога. Если вы не знаете, как это сделать, проверьте это здесь:

https://superuser.com/a/1356829/707698

...