保存我的唯一 ID(字符串)并稍后在我重新启动 Java 应用程序时检索它
Posted
技术标签:
【中文标题】保存我的唯一 ID(字符串)并稍后在我重新启动 Java 应用程序时检索它【英文标题】:Save my Unique ID (String) and retrieving it later when I re-launch my Java application 【发布时间】:2012-07-25 07:24:15 【问题描述】:我想保存一个在我启动 Java 应用程序时创建的唯一 ID(它是一个字符串)。现在我想把它保存在某个地方(我想是在磁盘上的某个文件中),这样当我重新启动我的应用程序时,我应该能够读取它并使用该 ID。
我想知道保存此类 ID 的好方法是什么。我正在考虑创建一个Properties 文件并保存它,然后在我重新启动应用程序时从中检索它。有没有更好或标准的方法?
编辑:
另外应该是存储在磁盘上的文件夹位置。它应该是相对于我的执行路径还是某些登录用户特定的路径?
【问题讨论】:
是的,这是一个不错的选择,但也取决于您在其中存储的内容 该文件没问题,请注意将其存储在操作系统的相应文件夹中(Windows 中的Users/yourUser/AppData,Linux 中的/home/yourUser)等。 另一个选项是偏好 api。 docs.oracle.com/javase/6/docs/api/java/util/prefs/… 【参考方案1】:1.如果是写入或读取此字符串的同一个Java应用程序,则使用Serialization
,保存时它将是不可读的形式。
2.如果读写来自不同的程序,则使用Text file
。
3. 使用Property file
也是一个不错的方法。
【讨论】:
我也会使用简单的序列化。 @KumarVivek:感谢您的回答。理想情况下,如果我使用属性文件,文件夹位置应该是什么?[查看我有问题的更新]。 我通常将我的属性文件直接放在我的 bin 文件夹中,这有助于我的程序轻松找到它........【参考方案2】:如果您的应用/程序需要在某个时候存储更多数据,那么 sqlite3 可能是您的最佳选择。它易于实现和使用。
Download sqlite3
编辑:应用程序中将存储多少个 ID?如果只有几个,一个文本文件或属性文件就足够了。
EDIT2:导航到您机器上的 Documents 文件夹,您将看到程序/游戏文件夹。那就是你应该放置文件/数据库的地方。但是,您也可以将其存储在硬盘驱动器的安装路径中。还要确保您的用户通过快捷方式启动应用程序,而不是实际的执行文件
【讨论】:
【参考方案3】:使用 Java 中的 FileWriter 和 File 类。
应该是这样的:
File f = new File(your path here);
if (f.exists())
BufferedReader br = new BufferedReader(new FileReader(your path here));
String a = br.readLine();
br.close();
else
FileWriter fw = new FileWriter(your path here);
fw.write(your ID String);
fw.flush();
fw.close();
我希望这是你的意思。 最好的问候
编辑:刚刚注意到您编辑了您的帖子为时已晚......
【讨论】:
以上是关于保存我的唯一 ID(字符串)并稍后在我重新启动 Java 应用程序时检索它的主要内容,如果未能解决你的问题,请参考以下文章
如何在从 Spark 消费 Kafka 时获取偏移 id,将其保存在 Cassandra 中并使用它来重新启动 Kafka?