经过测试:

new File(""); // 返回当前项目路径

new File("test.txt"); // 返回当前项目路径加上给定文件名

new File("/test.txt"); // 返回 `JVM` 实例所在盘符加上给定文件名

在 File.java 里可以看到其构造方法的源码:

// File.java

public File(String pathname) {

if (pathname == null) {

throw new NullPointerException();

}

this.path = fs.normalize(pathname);

this.prefixLength = fs.prefixLength(this.path);

}

其中 path 就是影响到结果的地方,fs 在 Windows 下是一个 WinNTFileSystem 的实例,其 normalize 方法的源码如下:

/* Check that the given pathname is normal. If not, invoke the real

normalizer on the part of the pathname that requires normalization.

This way we iterate through the whole pathname string only once. */

@Override

public String normalize(String path) {

int n = path.length();

char slash = this.slash;

char altSlash = this.altSlash;

char prev = 0;

for (int i = 0; i < n; i++) {

char c = path.charAt(i);

if (c == altSlash)

return normalize(path, n, (prev == slash) ? i - 1 : i);

if ((c == slash) && (prev == slash) && (i > 1))

return normalize(path, n, i - 1);

if ((c == ':') && (i > 1))

return normalize(path, n, 0);

prev = c;

}

if (prev == slash) return normalize(path, n, n - 1);

return path;

}

具体为什么 / 会导致结果的不同,现在我没时间追下去,有兴趣你可以自行看一下,这个文件在 java.io.WinNTFileSystem

那你就检查 Tomcat(或者其他 Server) 的配置文件看一下 webroot 指向了哪里

java将map输出到d盘_java后台的“/”相对路径不是代表webroot吗,为什么在这里代表了d盘,测试的文件都传到了d盘呀?...相关推荐

  1. java中map可以为空吗_Java: Map里面的键和值可以为空吗?

    在Java中,Map里面的键和值可以为空吗?我们先来看一个例子: private static void TestHashMap() { // TODO Auto-generated method s ...

  2. java将字体输出成图片格式_JAVA IO流中,能否将一个字符串以图片的格式输出出来呢,即字符串显示在图片上...

    展开全部 执行成功后会在D盘根目录生成32313133353236313431303231363533e59b9ee7ad9431333332616433一张名为image的jpg格式的图片,图片上以 ...

  3. 把自己的文件上传到百度网盘,成为公开资源的教程

    1.上传一个文件 打开百度网盘,上传一个文件, 如图: 2.分享文件 右键点击"分享", 如图: 3.上传文件 设置好分享方式, 如图: 4.创建链接 创建一个链接, 如图: 点击 ...

  4. java 下载文件选择下载路径_Java后台如何根据路径地址下载文件?

    public static final String HTTp_URL="http:下载链接"; public static void main(String[] args) { ...

  5. 电脑文件夹备份到百度网盘,可以实现自动备份

    电脑文件夹怎么备份到百度网盘?我们经常需要将电脑上的重要文件进行备份,备份可以保证数据安全,以减轻因为文件丢失而带来的顺出.百度网盘是一种非常不错的文件云存储介质,所以很多小伙伴希望能将电脑文件备份到 ...

  6. java项目src路径_java 得到项目src路径

    一 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=System.getProper ...

  7. java前后台开发之文件上传

    入职java已经快2个月了.做了一个多月的改bug,6天的开发,刚做完一个文件上传,得好好整理下. 文件上传的大体思路其实是一样的,前端通过表单的方式上传,后端解析这个表单请求中的内容,得到文件部分的 ...

  8. java文件流 m.jb51.net_FasfDFS整合Java实现文件上传下载功能实例详解

    今天使用Java代码实现文件的上传和下载.对此作者提供了Java API支持,下载fastdfs-client-java将源码添加到项目中.或者在Maven项目pom.xml文件中添加依赖 org.c ...

  9. java输入和输出路径_Java输入输出

    Java输入输出学习 File类 File类是java.io包下代表与平台无关的文件和目录,也就是说,如果希望在程序中操作文件和目录,都可以通过File类来完成.值得指出的是,不管是文件还是目录都是使 ...

  10. java map输出中括号,从地图检索数据时获取双方括号

    我将数据存储在Map中,以字符串作为键,以JSONArray作为值的形式存储在Map中,但是在检索数据时,我得到了值的双方括号 这是我的程序 import java.util.Iterator; im ...

最新文章

  1. java报错MalformedURLException: unknown protocol: c
  2. cocos2d-x 3.0 Loading界面实现
  3. cs224n第六讲依存分析
  4. VALSE Webinar 20-29期 图文并茂, 让视觉与语言相得益彰
  5. Fibonacci again and again HDU - 1848(尼姆博弈+SG函数的运用+SG函数详解)
  6. Java 7 vs Groovy 2.1性能比较
  7. 冻存样品对单细胞测序影响大吗?
  8. redis配置master-slave模式
  9. sql server中截取字符串的常用函数(自己经常到用的时候想不起来所以拿到这里)...
  10. hadoop提交作业到云端问题解决
  11. Goolgle10个搜索技巧
  12. sox处理mp3,使用SoX将mp3文件拆分为TIME秒
  13. 1647120-04-4,c(Bua-Cpa-Thi-Val-Asn-Cys)-Pro-d-Arg-NEt2 acetate多肽
  14. .NET Framework 3.5 安装错误:0x800F0906、0x800F081F、0x800F0907
  15. springboot基于微信小程序的在线办公系统+java+uinapp+Mysql
  16. ARM固件开发(LPC1768启动初始化代码)
  17. STM8S 模拟I2C程序
  18. 测试jre 和jdk是否安装好
  19. 米家扫拖一体机器人重置键_如何评价小米米家扫拖一体机器人?
  20. win10重装系统后连不上公司服务器,Win10电脑重装系统后不能上网怎么办?

热门文章

  1. 新品Demo —— ZStack CMP多云管理平台
  2. 洞察|2019年混合云发展:前景广阔 巨头混战 SD-WAN成重要推手
  3. 【图像加密】基于matlab DNA混沌系统图像加密【含Matlab源码 1190期】
  4. 【物理应用】基于matlab波数谱计算【含Matlab源码 508期】
  5. 【图像隐写】基于matlab高斯模型JPEG图像隐写【含Matlab源码 367期】
  6. lucky前面加a还是an_加方法 || 让孩子赶超学霸!这份小学英语知识精编,千万不能错过啦!...
  7. iphone 相机拍摄比例_在iPhone上拍摄:Apple如何解决Deepfakes和其他媒体操纵问题
  8. 贝叶斯公式的图形记忆
  9. linux 监控软件介绍,Linux中系统整体性能监控工具详细介绍
  10. C++PrimerP104