zoukankan      html  css  js  c++  java
  • Java 文件路径的读取

    记得在操作系统中了解到文件读取有两种方式,当然这在各编程语言中也是通用的,所以java路径也分,相对和绝对路径。

    绝对路径

    绝对路径URI ,听着和URL非常相似。那我们就来看看吧。

    URI(Uniformresource Identifier)统一资源标示符.URL统一资源定位符,是一个定位器,还说明了详细怎样找到资源.所以他们就有一种抽象和继承的关系。URI抽象的说明了统一资源表示符号,而URL是详细的标识符的方式.

    怎样使用呢。

    如我们想获取一个类的详细位置。仅仅要例如以下方式:

    比如:test.class.GetResouce("");

    假设中间加了"/"test.class.GetResouce("/");获取的就是该java类的跟文件夹了。

    两者是不同的。


    相对路径

    一般是相对于某一绝对路径的,我们常使用的是相对于ClassPath

     如:使用ClassLoader类的getResouce()等方法。得到的是当前classPath相对路径。

     URL ds=Thread.currentThread().getContextClassLoader().getResource("");
    System.out.print(ds+"
    ");
    System.out.print(ClassLoader.getSystemResource(""));

    两种结果是同样的.


    若要读取内容,直接使用字节流文件

    InputStream in=ClassLoader.getSystemResourceAsStream(""beanx-config.xml"");

    ClassLoader是类载入器,能够指定载入特殊资源.上图中为何同样呢.原因在于Thread.currentThread()设定了当前的 ClassLoader.他们都指定默认的路径.所以两者路径同样. 

    整体认识:

    URL是一种详细的URI,它不仅唯一标识资源,并且还提供了定位该资源的信息。URI是一种语义上的抽象概念,能够是绝对的,也能够是相对的。而URL则必须提供足够的信息来定位。所以,是绝对的,而通常说的relative URL,则是针对还有一个absolute URL,本质上还是绝对的.

     


  • 相关阅读:
    [kuangbin带你飞]专题十二 基础DP1 E
    hdu 1203 I NEED A OFFER! (01背包)
    hdu 2602 Bone Collector (01背包)
    hdu 4513 吉哥系列故事——完美队形II (manacher)
    hdu 2203 亲和串 (KMP)
    hdu 1686 Oulipo (KMP)
    hdu 1251 统计难题 (字典树)
    hdu 2846 Repository (字典树)
    hdu 1711 Number Sequence (KMP)
    poj 3461 Oulipo(KMP)
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7103240.html
Copyright © 2011-2022 走看看