2017-08-21 16 views
0

私は* .docファイルにマージする必要があります。 .docをサポートしていないので、私はpython-docxを使うことができません。私はolefileを使用しようとしましたが、私はこのエラーを得た:Pythonは2つの* .docファイルをマージします

write_stream: data must be the same size as the existing stream

import olefile 

ole = olefile.OleFileIO('asd1.doc') 
data = ole.openstream('WordDocument').read() 
ole1 = olefile.OleFileIO('asd.doc') 
data1 = ole.openstream('WordDocument').read() 
data2 = data1 + data 
ole2 = olefile.OleFileIO('test.doc', write_mode=True) 
ole2.write_stream('WordDocument', data2) 
ole.close() 
ole1.close() 
ole2.close() 

Linuxマシンで*の.docファイルをマージする方法は?

答えて

0

Pywin32は、2つのドキュメントをマージするために使用されます。このため のコードは、以下に示す1のようになります。

import win32com.client as win32 

word = win32.gencache.EnsureDispatch('Word.Application') 
word.Visible = False 

output = word.Documents.Add() 

output.Application.Selection.Range.InsertFile('second.doc') 
output.Application.Selection.Range.InsertBreak() 
output.Application.Selection.Range.InsertFile('first.doc') 

output.SaveAs('output.doc') 
output.Close() 
+0

おかげで、私はので、Linuxマシンのwin32comを使用することはできません。 –

関連する問題