java在eclipse中使用CREATETXT并打包在jar中
我有个问题
对于我的项目的性质,我需要读取一个txt文件,打包在一个JAR中,这是我的情况:
我在eclipse中有一个项目,我在其中创建了一个txt文件:project->;新->;新的txt文件 在此文件中,我将存储我的登录设置
我想创建一个可执行的JAR,当我执行这个JAR时,我想使用存储在txt文件中的数据
这个Jar应该尽可能独立,因为我需要在许多不同的地方和情况下执行它,我只能有一个文件(Jar),这个txt应该放在Jar中
我该怎么做
我希望这个问题之前不会被回答(我一直在寻找答案,但没有找到任何回应),如果是重复的问题,我会提前道歉
# 1 楼答案
您应该查看核心Java中的“Class.getResourceAsStream(字符串名称)”。您可以使用它从应用程序中打开一个文本文件(或任何其他类型的文件),打包在一个jar或任何东西中
请注意,如果您在文件中存储敏感信息,任何拥有jar的人都可以查看它;如果你不想让人看到,你需要加密这些信息
# 2 楼答案
不能写入存储在JAR文件中的文件
您可以将JAR文件和文本文件存储在一起,并使用批处理文件(.bat)以文件名作为参数来执行JAR
这样,您将只有一个文件要执行
这样行吗
# 3 楼答案
非常感谢您的所有回答,在en,我已通过nex指令解决了此问题编号:
in=new BufferedReader(新的InputStreamReader(AppTask.class.getClassLoader())。getResourceAsStream(AppData.SettingsFile))
它很好用。 再次感谢,再见
# 4 楼答案
你可以拿到你的护照。jar的位置通过
getClass()。getProtectionDomain()。getCodeSource()。getLocation()
从这里创建一个具有此位置的jar文件,获取txt JarEntry并通过FileOutputStream将其写出。然后您可以读取文件的内容