使用Java Web Start输入/输出

时间:2009-07-08 16:31:22

标签: java jar jnlp java-web-start

我正在努力将一个非常简单的java桌面应用程序转换为在java web start中运行,并且我在输入/输出文件方面遇到了各种各样的麻烦。最具体地说,我似乎无法找到有关如何在Web启动应用程序中处理i / o的任何信息。我尝试将输入文件放在我的Web服务器上与jar和jnlp文件相同的文件夹中,但是它没有读取它。

我有一个输入文件,我想保留在Web服务器上并从那里读入应用程序。

我有第二个文件,我希望应用程序在第一次运行时在客户端计算机上生成,然后每次都从那里读取。

如果有人知道我需要在java web start中为i / o做些什么考虑,或者可以指向一个解释它的资源我会很感激。

2 个答案:

答案 0 :(得分:2)

您可以使用BasicService找到下载的位置,然后使用HTTP传输文件。你也可以将它们添加到一个罐子里。

您可以使用PeristenceService存储有限数量的信息(我认为它目前默认为128K /松饼)。

http://java.sun.com/javase/6/docs/jre/api/javaws/jnlp/

答案 1 :(得分:0)

你没有太多选择。

  • 您 可以从http 新URL(地址).openStream()
  • 中读取文件
  • 您可以将文件嵌入jar中 我相信你不想要, 然后使用 getResourceAsStream()

您通常使用隐藏文件夹

将文件存储在用户硬盘上
public final class ApplicationConstants{
  final static String HOMEDIR_STRING = System.getProperty("user.home");
  final static File HOMEDIR = new File(HOMEDIR_STRING);
  final static File CONFIG_DIR = new File(HOMEDIR, ".com.mycompany.myapp");
}
///
if(!ApplicationConstants.CONFIG_DIR.exists()) ApplicationConstants.CONFIG_DIR.mkdirs();

File outputFile = new File(ApplicationConstants.CONFIG_DIR, "my.xx"));