在导出的 eclipse rcp 产品中写入文件

writing files in exported eclipse rcp product

我是新手,我正在使用 eclipse-rcp 并尝试使用保存在 xml files.when 中的数据构建地址簿 files.when 我是 运行 它能够做到的项目读取和写入 xml 文件,但是当我将其导出到 rcp 产品中时,它只能读取文件而不能写入。

我尝试搜索 Google 但找不到相关答案,所以我求助于 SO。

有什么建议吗??

编辑 这是我尝试读取文件并将其写入 xml 文件

的方法
public void writedata() {
    try {
        DocumentBuilderFactory builderFactory = DocumentBuilderFactory
                .newInstance();
        DocumentBuilder builder = builderFactory.newDocumentBuilder();
        Bundle bundle = Platform.getBundle(Activator.PLUGIN_ID);
        URL fileURL = bundle.getEntry("/xmlfiles/person.xml");
        InputStream inputStream=fileURL.openStream();
        Document xmlDocument = builder.parse(inputStream);
        ..................................................
        ..................................................
        ..................................................
        TransformerFactory transformerFactory = TransformerFactory
                .newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        DOMSource source = new DOMSource(xmlDocument);
        Bundle bundle1 = Platform.getBundle(Activator.PLUGIN_ID);
        URL fileURL1 = bundle1.getEntry("/xmlfiles/person.xml");

    StreamResult result = new StreamResult(new File(FileLocator.resolve(fileURL1).getPath())); 
        transformer.transform(source, result);

当您 运行 来自 Eclipse 的应用程序时,它会为您的插件使用扩展的项目文件夹。您的 XML 文件在此位置可写。

当您导出为 RCP 应用程序时,您的插件将被打包为一个插件 jar 文件,其中包含 XML 文件。您将无法写入此文件。

要使文件可写,它需要在您的插件项目之外,在 RCP 应用程序工作区或外部文件夹中。