`

Java读取工程里的文件

    博客分类:
  • Java
阅读更多

Java读取工程里的文件

我们会经常遇到这样的问题,工程里有一个文件,Java程序要读取这个文件,不采用绝对路径的方法,而使用相对路径来读取文件。以后迁移到其他机器上就不会出现读取文件失败的问题了。以下就介绍java如何读取相对路径的文件。

1.java project环境,使用java.io用相对路径读取文件的例子:
 *目录结构:
  MyProject
    |___src
  |___com.etrip.SamplesReader.java
    |___resources
  |___train.txt,列车时刻表.xls
 *SamplesReader.java:
  String filepath="resource/train.txt";//*注意:相对路径的起始处无斜杠"/"
  File file=new File(filepath);

  *我们留意filepath的内容,java.io默认定位到当前用户目录("user.dir")下,即:工程根目录"d:\workspace\MyProject"下,
  因此,此时的相对路径(以user.dir为基路径的路径)为"resources/train.txt"。
  这样,JVM就可以根据"user.dir"与"resource/train.txt"得到完整的路径(即绝对路径)"d:\workspace\MyProject\resources\train.txt",从来找到train.txt文件。

2.javaEE环境,使用Classloader用相对路径读取xml的例子
  java使用相对路径读取xml文件:

  一、xml文件一般的存放位置有三个:
  a)放在WEB-INF下;
  b)xml文件放在/WEB-INF/classes目录下或classpath的jar包中;
  c)放在与解析它的java类同一个包中,不一定是classpath;

  二、相对应的两种使用相对路径的读取方法:
  方法一:将xml文件放在WEB-INF目录下,
  程序代码:
  InputStream is=getServletContext().getResourceAsStream("/WEB-INF/*.xml");

  方法二:将xml文件放在/WEB-INF/classes目录下或classpath的jar包中,则可以使用ClassLoader的静态方法getSystemResourceAsStream(String s)读取;
  程序代码:
  String s_xmlpath="com/etrip/web/ext/xml/hotspot.xml";
  InputStream in=ClassLoader.getSystemResourceAsStream(s_xmlpath);

  方法三:xml在随意某个包路径下:
  String s_xmlpath="com/etrip/web/ext/xml/hotspot.xml";
  ClassLoader classLoader=Main.class.getClassLoader();
  InputStream in=classLoader.getResourceAsStream(s_xmlpath);

  必须通过ClassLoader来执行getResourceAsStream()方法。获取ClassLoader有两种方式:
  InputStream in = Main.class.getClassLoader().getResourceAsStream(xmlfilename);
  InputStream in = Main.this.getClass().getClassLoader().getResourceAsStream(xmlfilename);

 

分享到:
评论

相关推荐

    用Java读取.shp文件的工程文件

    这个Java工程文件旨在提供一个解决方案,帮助开发者读取`.shp`文件,获取其中的几何对象坐标,并将这些坐标写入新的文件中。下面我们将深入探讨如何用Java处理`.shp`文件以及相关的技术要点。 首先,要读取`.shp`...

    java读写hdf5格式文件需要使用的库

    这里提供的jar文件`hdf5-3.3.2.jar`是Java接口库,它封装了对HDF5文件的操作,使得Java程序员可以通过调用Java API来实现读写HDF5文件。而`libjhdf.so.3.2.1`和`jhdf5.dll`分别是Linux和Windows平台的动态链接库,...

    java读取项目中的文件(src目录下)

    在Java编程中,读取项目中的文件,特别是位于`src`目录下的文件,是一个常见的需求。这涉及到对项目结构的理解和使用Java I/O流的知识。`src`目录通常包含源代码文件,而运行时,这些文件会被编译并放置到类路径...

    java 随机读写Java类文件

    在Java编程中,随机读写Java类文件是一个高级主题,涉及到对字节码级别的操作,通常用于类的动态加载、代码注入或者逆向工程等场景。以下是对这一主题的详细阐述: 1. **Java类文件结构**:首先,了解Java类文件的...

    Java读取dwg代码演示

    本文将深入探讨如何使用Java读取DWG文件,并提供一个简单的代码示例。首先,我们需要了解可用的库,例如`Teigha File Format API`(前身为Open Design Alliance的ODA)提供对DWG文件的访问。Teigha是一个强大的跨...

    java读取配置文件

    读取java 工程中的 xml 配置文件

    java读取xml文件生成文件

    Java语言在处理XML文件时,提供了丰富的API和库,使得我们可以轻松地读取、解析、修改和生成XML文档。在给定的场景中,我们主要关注如何使用Java来读取XML文件并根据需求生成新的文件。以下是关于这个主题的详细说明...

    Java读取配置文件工程

    Java读取配置文件工程

    使用java代码获取yml文件中指定的内容(csdn)————程序.pdf

    总结来说,这个Java程序展示了如何使用Snake YAML库读取和解析YAML配置文件。通过创建`Yaml`对象,加载文件内容,然后将内容转换为`Map`,我们可以方便地获取和操作YAML文件中的任意配置项。这在处理动态配置、...

    Springboot读取本地json文件工程

    1. **使用Java I/O流**:这是最基础的方法,通过`java.io`包中的`FileReader`和`BufferedReader`类,可以打开并读取JSON文件内容。例如: ```java File file = new File("src/main/resources/jsonfile.json"); ...

    java 上传下载文件工程

    在本工程中,可能已经实现了根据文件ID或名称从服务器读取文件,然后设置相应头部信息,将文件内容发送给客户端。 4. **安全考虑** 文件上传下载过程中,安全性尤为重要。开发者应防止非法文件上传,如病毒文件、...

    java POI读取excel文件数据

    它提供了API,使得开发者能够使用Java来读取、写入和修改Excel文件。在这个场景中,我们将详细探讨如何使用Java POI读取Excel文件中的数据,包括获取总行数、列数、单元格内容、合并单元格、行高、列宽以及图片等...

    java 利用POI读取Word文件中的内容

    如今,它已经成为处理Office文件格式的强大工具,支持读写Excel、Word和PowerPoint等多种文件。 在Java中,读取Word文档(.docx格式)主要使用XWPF(XML Word Processing)API。以下是使用POI读取Word文件的基本...

    flex+java读写excel文件

    本篇文章将深入探讨“flex+java读写excel文件”这一主题,基于提供的标签和压缩包子文件名称,我们将重点讲解Flex与Java如何协同工作来实现Excel文件的导入与导出功能。 Flex是一种开源的富互联网应用程序(RIA)...

    Java计算器程序工程文件

    【Java计算器程序工程文件】是一个基于Java编程语言开发的应用程序示例,主要展示了如何在Eclipse集成开发环境中构建一个简单的计算器。这个工程文件是初学者学习Java编程和Eclipse IDE使用的一个理想起点。 首先,...

    Java读取工程下面的*.properties文件

    在Java编程中,读取工程下特定类型的文件,如`.properties`文件,是常见的任务,这类文件常用于存储配置信息。本文将详细讲解如何在Java中读取`.properties`文件,以及相关的源码分析和工具使用。 首先,`....

    java连接opc读取数据

    最近由于项目需要,在已有java web工程里添加读取opc的接口类。通过接口将opc数据读取到本地存于oracle数据库中,供本管理系统趋势分析用。本实例在win7、xp系统本地均已调通。压缩包里有本人写的每一步详细说明操作...

    Java工程中资源文件的用法

    ### Java工程中资源文件的用法详解 #### 概述 资源文件,通常指的是`.properties`文件,这类文件采用键值对的形式存储数据,广泛应用于Java项目中存储配置信息、国际化字符串等。通过使用`java.util.Properties`类...

    如何使用Java代码获取文件、文件流或字符串的编码方式.zip

    本工程用于研究如何使用Java代码获取文件、文件流或字符串的编码方式 本工程编码方式:UTF-8 开发工具:MyEclipse 参考博客:http://blog.csdn.net/gaohuanjie/article/details/43735891

    java实现Xml文件读写

    本项目“java实现Xml文件读写”提供了一个完整的工程实例,包含了对XML文件进行添加、修改和读取的基本操作。 首先,要实现XML文件的读取,Java提供了`javax.xml.parsers`和`org.w3c.dom`这两个核心包。其中,`...

Global site tag (gtag.js) - Google Analytics