是否可以写入JAR内的文件?

问题描述 投票:0回答:2

我目前正在使用Java类Preferences来维护我们Java应用程序内部的首选项。这很简单,目前仅包含2个键/值对。该项目的某些高级版本要求将preferences.xml文件保留在JAR中,以使其运行干净,因此所有内容都将包含在JAR中(用户无需能够访问此文件)。

我知道首选项使用InputStream进行导入,使用OutputStream进行导出。无论如何,是否可以使用outputStream在jar中编辑文件?

java eclipse jar preferences fileoutputstream
2个回答
0
投票

我认为无法使用OutputStream在jar中编辑文件。

您可以做的是:您可以导入文件,对其进行编辑,然后将其添加回jar文件。要将文件推入jar,请参考adding a file to jar


0
投票

JAR文件是一个zip文件夹,因此可以使用java.util.zip包将其提取并使用。

但是,正在运行的jar可能受到写保护,从而防止内容修改。

它更适合将配置存储在操作系统的相应位置。在Windows上,常用位置是Windows注册表。

有一个Java库,用于编辑注册表,如this answer中所示。

库来源:https://github.com/apache/npanday/tree/trunk/components/dotnet-registry/src/main/java/npanday/registry

© www.soinside.com 2019 - 2024. All rights reserved.