如何保存通过PyUNO编辑的文档?

1 投票
2 回答
2074 浏览
提问于 2025-04-17 04:27

我现在已经成功地用Python打开了一个Word 97-2003格式的(.doc)文档,并且对它进行了编辑。但是,我该怎么保存它呢?

我总是遇到这个问题:

Traceback (most recent call last):
  File "office.py", line 55, in <module>
    model.storeToUrl('file:///c:/temp/out.doc', ())
AttributeError: storeToUrl

(相关问题.)

那么,属性应该是什么呢?

我又该怎么关闭这个文档呢?

2 个回答

1
model.storeToURL('file:///c:/temp/out.doc', (createPropertyValue("FilterName","MS Word 97"),) 

注意“URL”是全大写的,在我最开始的代码中,它拼写错了,写成了“Url”。

2

另外一个回答在网上到处都是,听起来很让人困惑。在一些例子中,model是TEXT对象,storeToURL()和dispose()是文档对象的方法,这里有另一个实现方式。

from com.sun.star.beans import PropertyValue
from unohelper import systemPathToFileURL

# open a writer document object
doc = desktop.loadComponentFromURL("private:factory/swriter", "_blank", 0, ())

.....

url = systemPathToFileUrl('c:/out.doc')

# NOTE THAT ARGS IS A TUPLE OF PROPERTY VALUES
args = (PropertyValue('FilterName', 0, 'MS Word 97', 0),)

doc.storeToURL(url, args)

# close the document
doc.dispose()

撰写回答