java如何读取文本文件,JAVA 读取文件
如何解决写爬虫IP受阻的问题?立即使用。
java中读取文件的方法:
读取java文件的两种方法:java.io和java.lang.ClassLoader
//java.io:
File file=新文件( . ));
file inputstream fis=new file inputstream( . ));
FileReader fr=新的FileReader( . ));
//类加载器:
class loader loader=xxxclass . class . get class loader();
class loader loader 2=thread . current thread()。getContextClassLoader();
URL url=loader.getResource( . ));
File File=new File(URL . getfile());
InputStream input=loader . getresourceasstream(“.”));1、java.io包中的类总是根据当前用户目录来分析相对路径名,即相对路径是否好用取决于user.dir的值系统属性user.dir是在JVM启动时设置的,通常是java虚拟机的调用目录,也就是执行Java命令的目录。
对于tomcat/jboss容器,user.dir是%home/bin%/目录,因为这个目录是我们启动web容器的地方。
在eclipse中运行程序时,eclipse会将user.dir的值设置为项目的根目录。
可以使用System.getProperty(user.dir )查看用户目录。
所以用java.io读文件,不管是相对路径还是绝对路径,都不是一个好的做法。不能用就不要用(在JavaEE中)。
2、使用ClassLoader
Class.getResource()有两种方式,绝对路径和相对路径。绝对路径以/开头,搜索从类路径或jar包根目录开始;
相对路径是相对于当前类所在的目录.或者。被允许定位文件。
ClassLoader.getResource()只能使用绝对路径,不一定要以/开头。
推荐这两种读取资源文件的方式(JavaEE),它们不依赖于user.dir或特定的部署环境。
如何选取
java.io:
相对于当前用户目录的相对路径读数;注意处理磁盘文件或者在纯java项目中使用。
虽然ClassLoader方法更通用,但如果不是javaEE环境,定位类路径路径读取文件是不合理的。
java.lang.ClassLoader:
相对于类路径的相对路径读数;建议在javaEE环境中使用这种方法。
一般ClassLoader不能读取太大的文件,适合读取web项目的那些配置文件。如果需要读取大文件,可以使用io包通过ClassLoader获取文件的绝对路径,然后传递给file或其他对象。最好和IO包里的对象一起读。
更多java知识,请关注java基础课程。这就是如何用java读取文件的细节。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。