Windows与Linux路径分隔符对比及Java代码实战

news2024/11/18 16:41:39

在Windows中,磁盘中用反斜杠(又称为右斜杠)\表示路径的分隔。在浏览器中用正斜杠/来表示路径的分隔。
cmd中的磁盘路径表示
浏览器路径表示
Linux则是统一用/表示路径的分隔的。下面给出Linux中一些常见的路径表示:

  • / 表示根目录
  • ./ 表示当前目录
  • …/ 表示上级目录

那么对于Java而言,路径分隔**推荐使用正斜杠(又称为左斜杠/,不推荐使用反斜杠(反斜杠需要转义:两个反斜杠\\表示一个正杠/)。
关于这个正反斜杠,我们来看一下Java代码实战:

@Test
public void test001(){
    // 路径以"/"开头表示Java项目所在的磁盘路径
    File file1 = new File("/");  
    // "\\"等于"/",但是不推荐使用
    File file2 = new File("\\"); 
    // 拼接路径推荐使用File.separator,会根据操作系统的不同帮我们自动识别路径分隔符
    File file3 = new File(File.separator); 
    // "./"表示当前项目的相对路径
    File file4 = new File("./"); 
    // 绝对路径
    File file5 = new File("C:/Users/IQ50/Pictures"); 
    // 绝对路径,同file5,但是不推荐使用
    File file6 = new File("C:\\Users\\IQ50\\Pictures"); 
    // 表示当前项目的相对路径下的文件,同"./test.txt"
    File file7 = new File("test.txt");  
    // 表示当前项目的相对路径下的文件,同"./testFolder/test.txt"
    File file8 = new File("testFolder/test.txt"); 
    // 表示Java项目所在的磁盘路径下的文件
    File file9 = new File("/test.txt"); 
    System.out.println(file1.getAbsolutePath());
    System.out.println(file2.getAbsolutePath());
    System.out.println(file3.getAbsolutePath());
    System.out.println(file4.getAbsolutePath());
    System.out.println(file5.getAbsolutePath());
    System.out.println(file6.getAbsolutePath());
    System.out.println(file7.getAbsolutePath());
    System.out.println(file8.getAbsolutePath());
    System.out.println(file9.getAbsolutePath());
}

来看下打印输出:
image.png
总结一下,在Java中,如果遇到拼接路径的情况,请使用File.separator

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1570957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】C++中的stack和queue

一、概述 本篇blog写明了介绍的是STL(标准模板库)中的stack和queue,栈和队列虽然在处理数据的方式上有明显的不同,但它们作为操作受限的线性数据结构,在学习和应用中经常被放在一起讨论,以便更全面地理解数据结构的概念和使用。 在…

Windows瘦客户机专用系统安装教程

前言 小白偶然看到微软有给瘦客户机定制了专用系统Windows Thin PC x86。 从名字就可以看出来,瘦客户机的系统是32位的,安装完系统之后可以用来干啥,咱们很多小伙伴估计都不清楚。 首先要了解:什么是瘦客户机? 瘦客户…

逐步学习Go-WaitGroup【连字都懒得写了,直接Show my Code】

package waitgroup_testimport ("fmt""runtime""sync""testing""time""github.com/stretchr/testify/assert" )// 这是对Go语标准库中sync包下的WaitGroup的描述。// WaitGroup用于等待一组并发的goroutine结结束…

争相上市,黑芝麻智能和地平线,能突出重围吗?

图片|freeflo.ai ©自象限原创 作者丨罗辑 中国最有代表性两家自动驾驶大算力芯片(SoC)公司在港交所相遇了。 3月23日,黑芝麻智能向港交所递交主板上市申请;3天之后,地平线也向港交所递交了招股书。…

基于Springboot的少儿编程管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的少儿编程管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

二极管特性介绍

二极管 贴片二极管 不同封装的二极管 二极管不同的符号 二极管的结构组成 二极管就是由一个PN结加上相应的电极引线及管壳封装而成的。 采用不同的掺杂工艺,通过扩散作用,将P型半导体与N型半导体制作在同一块半导体(通常是硅或锗&#xff…

【前端面试3+1】08 css选择器、在前端页面展示后端传来的图片数组、请求方法的常见类型、【搜索插入位置】

一、css选择器有哪些? 1.元素选择器: 通过元素名称选择元素。 示例:p 选择所有段落元素。 2.类选择器: 通过类名选择元素。 示例:.btn 选择所有类名为 btn 的元素。 3.ID选择器: 通过id属性选择元素。 示例…

Adobe Bridge 2024:连接创意,探索无限可能 mac/win版

Adobe Bridge 2024,作为Adobe家族中的一款强大的创意管理工具,再次革新了数字资产管理和工作流程优化的标准。这款软件不仅继承了Adobe Bridge一贯的直观界面和强大功能,更在多个方面进行了突破性的改进。 Bridge 2024软件获取 全面的资源管…

软考之零碎片段记录(六)+复习巩固

A. 上新 一、关系模式 1. 决定属性 AB->C,函数依赖左侧出现为决定属性 AB->C,函数依赖右侧出现为非决定属性 候选键在决定属性中挑选&#xff0c;AB->C, CD->B中&#xff0c;A,D为侯选建 二、授权SQL 将权限授予用户&#xff08;grant <权限> on&#xf…

Git安装教程(图文安装)

Git Bash是git(版本管理器)中提供的一个命令行工具&#xff0c;外观类似于Windows系统内置的cmd命令行工具。 可以将Git Bash看作是一个终端模拟器&#xff0c;它提供了类似于Linux和Unix系统下Bash Shell环境的功能。通过Git Bash&#xff0c;用户可以在Windows系统中运行基于…

【个人笔记】如何用 Python 编写激活码解锁程序,方法二

目录 前言 第一步&#xff1a;编写激活码解锁程序&#xff08;激活码.py&#xff09; 第二步&#xff1a;修改需要解锁的程序&#xff08;1.py&#xff09; 总结 前言 在软件开发中&#xff0c;有时我们需要设计一种机制来保护程序&#xff0c;例如通过激活码来控制程序的…

【MySQL】:深入解析多表查询(上)

&#x1f3a5; 屿小夏 &#xff1a; 个人主页 &#x1f525;个人专栏 &#xff1a; MySQL从入门到进阶 &#x1f304; 莫道桑榆晚&#xff0c;为霞尚满天&#xff01; 文章目录 &#x1f4d1;前言一. 多表关系1.1 一对多1.2 多对多1.3 一对一 二. 多表查询概述2.1 概述2.2 分类…

C51实现每秒向电脑发送数据(UART的含义)

其实核心的问题是&#xff1a;串口的通信方式 异步串行是指UART&#xff08;Universal Asynchronous Receiver/Transmitter&#xff09;&#xff0c;UART包含TTL电平的串口和RS232电平的串口 UART要实现异步通信的&#xff1a; UART是异步串行接口&#xff0c;通信双方使用时…

2024唐山国际门窗幕墙展览会

2024唐山国际门窗幕墙展览会 2024TangshanInternational Door and Window Curtain Wall Exhibition 2024年6月14-16日 地点&#xff1a;唐山南湖国际会展中心 唐山国际门窗幕墙博览会一 年一届&#xff0c;深耕京津冀核心区域&#xff0c;专注门窗行业高质量 发展&#x…

网络协议——HTTP协议

目录 ​编辑 一&#xff0c;HTTP协议基本认识 二&#xff0c;认识URL 三&#xff0c;http协议的格式 1&#xff0c;发送格式 2&#xff0c;回应格式 四&#xff0c;服务端代码 五&#xff0c;http报文细节 1&#xff0c;Post与Get方法 2&#xff0c;Content_lenth 3&…

基于Springboot的航班进出港管理系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的航班进出港管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结…

C++的 stack和queue 的应用和实现【双端队列的理解和应用】

文章目录 stack的理解和应用栈的理解栈的模拟实现string实现stackvector实现stack queue的理解和应用队列的理解队列的模拟实现 双端队列原理的简单理解deque的缺陷为什么选择deque作为stack和queue的底层默认容器STL标准库中对于stack和queue的模拟实现stack的模拟实现queue的…

智能停车场物联网远程监控解决方案

智能停车场物联网远程监控解决方案 智能停车场物联网远程监控解决方案是一种集成了现代物联网技术、大数据分析以及云计算等先进技术手段&#xff0c;对停车场进行全面智能化管理的综合系统。它通过实时感知、精准采集和高效传输各类停车数据&#xff0c;实现对停车场运营状态…

基于Springboot的学校防疫物资管理平台(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的学校防疫物资管理平台&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系…

Data-efficient Fine-tuning for LLM-based Recommendation

目录 Introduction 利用大型语言模型&#xff08;LLM&#xff09;进行推荐最近引起了相当大的关注&#xff0c;其中微调在 LLM 的适应中发挥着关键作用。然而&#xff0c;在快速扩展的推荐数据上微调LLMs的成本限制了其实际应用。为了应对这一挑战&#xff0c;小样本微调提供了…