Tag: 本地

Java Web Start应用程序可以从本地系统读取文件,但不能写入

请询问您是否需要更多信息。 我在jnlp中有安全性和所有权限标签,当我运行我的java应用程序离线时,它可以正常工作。 File T = new File(System.getProperty(“user.home”) + File.separator + “.myapp/”); if(!T.exists()) T.mkdirs(); File[] temp=new File[2]; temp[0] = new File(System.getProperty(“user.home”) + File.separator + “.myapp”+File.separator+”temp1.txt”); temp[1] = new File(System.getProperty(“user.home”) + File.separator + “.myapp”+File.separator+”temp2.txt”); writer=new BufferedWriter(new FileWriter(temp[x])); writer.write(finalData); writer.close(); 我使用以下方法写入我想在用户系统的目录中创建的文件。 在程序中,我也从同一个文件夹中读取,当我将测试数据放在该文件夹中时,它可以正常工作。 当我删除temp1.txt和temp2.​​txt文件时,它不会读取任何数据。 没有出现任何错误消息。 重申一下,当在java web start中运行时,弹出窗口并且程序正确运行而没有错误消息,但是它没有正确地将文件写入用户系统。 同时,当在.txt文件中提供测试数据时,它会正确读取。 编辑:如果可能的话,有没有使用某些javaw.jnlp。*方法的解决方案? 该程序实际上必须有一个文件夹,其中包含.txt文件 edit2:我的所有jar子也都签了

在Java中,是否需要同步不使用静态或类变量的方法?

仅使用局部变量的方法是否会遇到任何线程问题? 在某处提到过,使用局部变量的方法被复制到每个线程堆栈框架中,除非它使用类级别或静态引用/变量,否则不需要为multithreading实现进行同步?

从资源加载和解析xml的问题

我编写了一个解析器,它解析来自HttpURLConnection的xml文件。 这很好用。 问题:我需要重写这个,以便从本地资源而不是从互联网加载xml文件,但我无法让它工作……只是为了让你知道原始网络解析器的外观: InputStream in=null; URLConnection connection = url.openConnection(); HttpURLConnection httpConnection = (HttpURLConnection)connection; int responseCode = httpConnection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { in = httpConnection.getInputStream(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document dom = db.parse(in); Element docEle = dom.getDocumentElement(); NodeList nl = docEle.getChildNodes(); for (int i = 0; i < nl.getLength(); i++) { […]

为什么接口是静态的?

为什么我没有内部类的接口? 为什么它们本身就是static ? 对不起,如果这是一个愚蠢的问题,我已经尽力一次又一次谷歌,但我似乎无法将它包裹在我的头脑中。 为什么我不能在内部类/本地类中声明这些? 同样作为确认,我们可以在接口中拥有静态最终变量的原因是因为它们没有指定状态或任何类型的实现权限? 如果我们失去static并且只使用最后一个,我们需要一个没有意义的实例,因为你无法实例化一个接口。 对不起,我真的很困惑,我知道我应该提出另一个问题,但我认为这两个问题有些相关。

Java和本地数据库

TL DR; 想要一些Java帮助连接到一个真正的本地数据库(无法访问服务器技术),或者如果你可以提供代码,那将是有效的。 它所要做的就是查询数据库(MS Access,虽然可以更改),然后输出一个JSON字符串。 有关更多特异性,请参阅EDIT2。 编辑:在任何人说JDBC之前; 我查看了教程(开始深入阅读),但大部分内容似乎都面向服务器技术,我无法访问。 EDIT2:到目前为止,大多数答案都需要安装某种我很遗憾不能做的事情(没有提及,所以我道歉)。 然而,这是目前正在使用的,我想要一个类似于Java的解决方案,使其更加跨浏览器兼容,而不仅仅是HTA(链接: https : //launchpad.net/accessdb ) 好的,对于长版本。 我正在尝试使用本地数据库来创建桌面样式的应用程序(并可能利用其他项目的知识)。 我可以创建的数据库没有问题(MS Access 2003,恰好可以快速获得)。 目前我正在使用ActiveX脚本来处理HTML应用程序中的数据库(* .HTA文件仅适用于Internet Explorer),我真的想让这个更多的跨浏览器(如果公司EVER切换到实际的浏览器) )通过使用JAVA访问数据库,然后将结果输出JSON到局部变量JavaScript可以调用并使用。 老实说,宁愿选择教程类型信息,因为我想真正了解为什么这样做有效,所以我可以稍后修改它以满足我的需要。 我已经安装了Eclipse以及JDK,并且可以使用Java编写小程序,所以不是完全没脑死(但距离P不远)。 我一直在使用JavaScript,因此我可以阅读相当多的Java代码(不同的语法,因为它们不相关,但我知道Java的一点点我可以毫无问题地转换回JS)。 无论如何,任何援助将不胜感激。 我可以继续使用ActiveX开发(我知道它可以在系统上运行,我99%肯定他们会继续使用Internet Explorer,但是,想要一些灵活性)。

Java中的本地VS全局变量

在我今天看到一个例子之前,我以为我理解了java中局部和全局变量之间的区别。 在此代码中,我们尝试将元素添加到方法中的链接列表中: public void addDataPacket(DataPacket data){ PacketQueueElement newElement = new PacketQueueElement(data); if(firstElement != null){ lastElement.setNextElement(newElement); lastElement = newElement; } else{ firstElement = newElement; lastElement = newElement; } } 我不明白为什么newElement在方法关闭后不会消失? 因为这是一个局部变量,并且没有在类中的任何地方定义。 以下是此类的完整代码: public class PacketQueue { /** Das erste Element in der Warteschlange */ private PacketQueueElement firstElement; /** Das letzte Element in der Warteschlange. */ private […]

java本地和实例对象创建时的StackOverflowError

嗨,任何人都可以解释一下,为什么这段代码片段给我StackOverflowError我真的很感激,如果你能解释当instanceObj初始化和调用ObjectTest构造函数和java.lang.Object构造函数时发生了什么。 在我看来ObjectTest构造函数循环一遍又一遍。但我不知道确切的原因? 所以任何建议…… public class ObjectTest { public ObjectTest() { } ObjectTest instanceObj = new ObjectTest(); public static void main(String[] args) { ObjectTest localObj = new ObjectTest(); } }

重复的局部变量(For Loops)

我正在尝试解决一项任务(我仍然是Java的新手)并且已经通过许多资源来解决这个冲突,但仍然无法解决这个问题。(注意:Tuna是我的Scanner变量) int counted, sum, counted1; System.out.print(“Enter your number to be calculated: “); counted = tuna.nextInt(); counted1 =tuna.nextInt(); for(int counted=0;counted<=counted1;counted++){ System.out.println("The sum is: "+ counted); } } } 结果是:线程“main”中的exceptionjava.lang.Error:未解决的编译问题:计算重复的局部变量 我应该解决的问题是: 编写程序以读取数字,并将从1到该数字的所有数字相加。 例如,如果用户键在6中,则输出为21(1 + 2 + 3 + 4 + 5 + 6)。 补充:我读了一个相似的问题(),但我之前没有通过声明来解决这个问题。

Java:“本地变量可能尚未初始化”不够智能?

考虑以下方法: void a () { int x; boolean b = false; if (Math.random() < 0.5) { x = 0; b = true; } if (b) x++; } 在x++我得到“局部变量可能尚未初始化”错误。 显然x永远不会被未初始化使用。 除了初始化x之外,有没有办法抑制警告? 谢谢。

本地类Java的优势

Java中的本地类或使用此function的任何其他语言的优势是什么?