草庐IT

BLACK_MAMBA_Files

全部标签

java.io.File 与 java.nio.Files 哪个是新代码中的首选?

在围绕SO编写答案时,一位用户试图指出java.io.File不应在新代码中使用,相反他认为new对象java.nio.Files应该被使用;他链接到thisarticle.现在我已经用Java开发了好几年了,以前没有听说过这种说法;自从阅读了他的帖子以来,我一直在搜索,并没有找到很多其他来源可以证实这一点,而且就个人而言,我觉得文章中争论的许多观点都很薄弱,如果你知道如何阅读它们,错误引发的错误File类通常会准确地告诉您问题所在。随着我不断开发新代码,我的问题是:这是Java社区中的一个活跃论点吗?是Files优于File新代码?两者之间的主要优点/缺点是什么?

java - Eclipse - JAR 创建失败 "Class files on classpath not found or not accessible for..."

我在Eclipse中有一个项目,上面有一个红十字,不会导出到可运行的JAR。我不记得自从我在笔记本电脑上重新安装Windows后是否看过它,但我知道我没有更改任何代码。任何类都没有错误,但是我得到的错误指向以下处理MacOSx上的菜单项的类:importjava.lang.reflect.*;publicclassosxhandlerimplementsInvocationHandler{protectedObjecttargetObject;protectedMethodtargetMethod;protectedStringproxySignature;staticObjectma

java - 强制停止在外部线程上运行的 Java Files.copy()

这里的答案似乎是Java8之前的有效解决方案:HowtocancelFiles.copy()inJava?但现在它不起作用,因为ExtendedCopyOption.INTERRUPTIBLE是私有(private)的。基本上,我需要从给定的URL下载一个文件,然后使用Files.copy()将它保存到我的本地文件系统中。目前,我正在使用JavaFX服务,因为我需要在ProgressBar中显示进度。但是,如果操作时间过长,我不知道如何阻止运行Files.copy()的线程。至少不需要使用Thread.stop()。甚至Thread.interrupt()也会失败。如果互联网连接不可用

java - Android 上的 ThreeTen-Backport 错误 - ZoneRulesException : No time-zone data files registered

我正在为我的Android项目使用ThreeTen-Backport库(因为java.time尚未在android开发中实现)。当我写LocalDatetoday=LocalDate.now();或LocalTimetime=LocalTime.now();我得到以下异常:Causedby:org.threeten.bp.zone.ZoneRulesException:Notime-zonedatafilesregisteredatorg.threeten.bp.zone.ZoneRulesProvider.getProvider(ZoneRulesProvider.java:176)

Java Files.write NoSuchFileException

我正在尝试使用Files.write()方法将一些文本写入文件。byte[]contents=project.getCode().getBytes(StandardCharsets.UTF_8);try{Files.write(project.getFilePath(),contents,StandardOpenOption.CREATE);}catch(IOExceptionex){ex.printStackTrace();return;}根据API,如果文件不存在,则会创建并写入该文件。但是,我明白了:java.nio.file.NoSuchFileException:C:\Use

java - 运行 Java 给出 "Error: could not open ` C :\Program Files\Java\jre6\lib\amd64\jvm. cfg'"

经过多年的正常工作,我在尝试启动JVM时突然收到此消息:Error:couldnotopen`C:\ProgramFiles\Java\jre6\lib\amd64\jvm.cfg'我尝试卸载,但收到一条消息说缺少DLL(未指定)尝试重新安装,但无济于事。同时,在尝试启动Scala时,我得到:\Java\jdk1.6.0_25\bin\java.exewasunexpectedatthistime.检查%JAVA_HOME%和%path%-都OK谁能帮忙? 最佳答案 我检查了我的环境变量-JAVA_HOME&PATH,它们都指向C:

java.lang.SecurityException : The jurisdiction policy files are not signed by a trusted signer

在处理另一个问题(与RMI相关)时,我使用“无限强度”策略文件升级了系统的“安全文件夹”,现在我的应用程序以不同的方式失败。我得到一个长堆栈转储,其中以下位似乎相关:Exceptioninthread"main"java.lang.ExceptionInInitializerError[...crop...]Causedby:java.lang.SecurityException:Cannotinitializecryptographicmechanismatjavax.crypto.JceSecurity.(JceSecurity.java:86)...17moreCausedby:

Java IOException "Too many open files"

我正在对多个文件进行一些文件I/O(写入19个文件,它确实如此)。在给他们写了几百次之后,我得到了JavaIOException:Toomanyopenfiles。但实际上我一次只打开了几个文件。这里有什么问题?我可以验证写入是否成功。 最佳答案 在Linux和其他UNIX/类UNIX平台上,操作系统对进程在任何给定时间可能拥有的打开文件描述符的数量进行了限制。在过去,这个限制曾经是硬连线1,而且相对较小。如今,它要大得多(数百/数千),并且受制于每个进程的“软”可配置资源限制。(查找ulimitshell内置...)您的Java应

java - 上下文 :property-placeholder not working for multiple files

我有2个属性文件。我已经像这样提到了context:property-placeholder中的两个文件...这个我也试过了conf/LicenseSettings.properties上述两种方法我都试过了。谁能发现错误并帮助我解决这个问题?我已经提到了this,但对我来说效果不佳。 最佳答案 您可以在配置文件中指定多个context:property-placeholder标签。您还可以使用order属性指定首先加载哪个。 关于java-上下文:property-placeholde

Spring i18n : problem with multiple property files

我的messages.properties确实是一个大文件。因此,我尝试将messages.properties中的一些属性移动到一个新文件中,比如newmessages.properties并使用两个文件更新springbean配置xml,如下所示:但是,我无法访问新属性文件中定义的任何属性。是否真的可以指定多个属性文件(针对单个语言环境)? 最佳答案 basenames(末尾为s)属性接受一个basenames数组:Setanarrayofbasenames,eachfollowingtheabove-mentionedspec