使用Java小程序不能读取文本文件
问题描述:
当我尝试使用JApplet和Java Web Start读取文本文件时,我遇到了一个问题,基本上我有一个带有用户数据的文件,我希望读取它。文本文件存储在Web服务器上。下面是代码:使用Java小程序不能读取文本文件
company.readCompanyFile("file:///C:/Users/Chris/Desktop/ArFile Clients/" + companyName + "/"
+ companyName + ".cmp");
和readCompanyFile功能:
public void readCompanyFile(String cname)
{
try
{
BufferedReader br = new BufferedReader(new FileReader(cname));
name = br.readLine();
quota = Float.parseFloat(br.readLine());
String s;
while ((s = br.readLine()) != null)
{
String[] parts = s.split(":");
metadataFields.add(parts);
}
br.close();
}
catch(IOException e)
{
System.out.println("File does not exist, or has invalid format");
}
}
会抛出试图通过Java Web启动开始
BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients]
at com.sun.javaws.jnl.XMLUtils.getAttributeURL(Unknown Source)
at com.sun.javaws.jnl.XMLUtils.getRequiredURL(Unknown Source)
at com.sun.javaws.jnl.XMLFormat.handleResourceElement(Unknown Source)
at com.sun.javaws.jnl.XMLFormat.access$800(Unknown Source)
at com.sun.javaws.jnl.XMLFormat$2$1.visitElement(Unknown Source)
at com.sun.javaws.jnl.XMLUtils.visitChildrenElements(Unknown Source)
at com.sun.javaws.jnl.XMLFormat$2.visitElement(Unknown Source)
at com.sun.javaws.jnl.XMLUtils.visitElements(Unknown Source)
at com.sun.javaws.jnl.XMLFormat.buildResourcesDesc(Unknown Source)
at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source)
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source)
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source)
at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source)
at sun.plugin2.main.client.PluginMain.initManager(Unknown Source)
at sun.plugin2.main.client.PluginMain.access$200(Unknown Source)
at sun.plugin2.main.client.PluginMain$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Error while initializing manager: BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients], bail out
答
的文本文件时,出现以下错误存储在Web服务器上。
...而小程序在客户端计算机上运行。如何读取文件?
您必须通过网络访问它,例如通过HTTP(将它放在服务器上的小程序旁边)。
此外,stacktrace似乎与您的代码没有任何关系。看起来Webstart无法解析部署描述符(可能也是因为引用了服务器磁盘上的文件)。
好的,谢谢一堆,我会试一试! 我的网络服务器目前在我的机器上运行,但是在他的地址: file:/// C:/Users/Chris/Documents/NetBeansProjects/ArFile/dist/launch.html 那么这是否意味着我应该复制ArFile客户端文件夹从问题到这个本地目录,并调整文件路径,而不是类似http:// ArFile客户端+ companyName +“/” + companyName +“.cmp”); ?? –