关于Java的File.separator

java项目部署到服务器上后,访问不到项目中的模版文件(如excel、word) 线上环境报错:java.io.FileNotFoundException: file:/data/product/release/spt-bas-web/spt-bas-web.jar!然而线上部署是以jar包运行的,在读取文件的时候,用上述代码会读取不到文件,然后用Resource res = new ClassPathResource(“Template.xlsx”);此方法是通过流的形式读取的,resource继承了InputStreamSource,所以才能以流的方式读取到文件内容。 阅读详情

在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。

 

比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写:
File file1 = new File ("C:\tmp\test.txt");
在Linux下则是这样的:
File file2 = new File ("/tmp/test.txt");

如果要考虑跨平台,则最好是这么写:
File myFile = new File("C:" + File.separator + "tmp" + File.separator, "test.txt");

File类有几个类似separator的静态字段,都是与系统相关的,在编程时应尽量使用。

separatorChar

public static final char separatorChar

与系统有关的默认名称分隔符。此字段被初始化为包含系统属性 file.separator 值的第一个字符。在 UNIX 系统上,此字段的值为 '/';在 Microsoft Windows 系统上,它为 '\'。

separator

public static final String separator

与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即 separatorChar。

pathSeparatorChar

public static final char pathSeparatorChar

与系统有关的路径分隔符。此字段被初始为包含系统属性 path.separator 值的第一个字符。此字符用于分隔以路径列表 形式给定的文件序列中的文件名。在 UNIX 系统上,此字段为 ':';在 Microsoft Windows 系统上,它为 ';'。

pathSeparator

public static final String pathSeparator

与系统有关的路径分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即 pathSeparatorChar。

 

 

 

☞   温馨提示: 返回我的博客索引

 

 

 

 

 

Java使用File.separator解决Win和Linux的路径问题 http://blog.csdn.net/qq_30930805/article/details/71439677 阅读详情

相关推荐

AI视频生成本地搭建图文详细过程

在自己的电脑上搭建一个AI,主要用于通过自己输入的关键字来自动生成视频文案,把视频文案自动生成视频,再自动给视频配音配字幕。

张小三的博客 4692

File.separator

而 File.separator 是系统默认的文件分隔符号,因此File.separator 的作用就是保证在任何系统都可以正确表示斜线。File.separator代表系统默认文件目录分隔符,即我们所说的“斜线”。

CVPR收割机的博客 6234

Agent 团队管理手册:如何设定目标、分配角色与解决冲突

本文从Agent团队的底层逻辑出发,完整讲解了Agent团队管理的三大核心模块:目标设定(分层拆解+对齐校验)、角色分配(能力匹配+最优算法)、冲突处理(分类处理+仲裁投票),并提供了可直接运行的完整代码示例。通过本文的方法,你可以快速搭建一个高效协作的Agent团队,大幅提升复杂任务的完成效率和准确率。Agent团队是未来AI应用的核心形态,现在正是落地的黄金期,建议你从一个小场景开始动手实践,逐步优化自己的Agent团队管理方法论。

AI天才研究院 233

关于:File.separator ( 详解 )

其实File.separator 的作用相当于 ' \ ' 在 windows 中文件文件分隔符 用 ' \ ' 或者' /' 都可以 但是在 Linux 中,是不识别 ' \ '的,而File.separator 是系统默认的文件分隔符号,在 UNIX 系统上,此字段的值为' /' 在Microsoft Windows 系统上,它为 ' \ '屏蔽了这些系统的区别。...

平凡的人类的博客 11万+

深入解析Mifare Classic Crypto1认证流程与密钥交换机制

本文深入解析Mifare Classic Crypto1认证流程与密钥交换机制,详细介绍了Crypto1加密算法的工作原理、认证初始化阶段、随机数交换与密钥流生成过程,以及双向验证步骤。文章还分析了Mifare Classic的安全漏洞,包括随机数生成缺陷和密钥流恢复攻击,并提供了Proxmark3实战演示和防护建议。

c6d7e8f9g的博客 898

ESP32设备驱动-TM1637-驱动4位7段数码管

TM1637是一款带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成了MCU数字接口、数据锁存、LED高压驱动、键盘扫描等功能。 TM1637使用DIP20/SOP20封装,主要适用于电磁炉、微波炉、小家电的显示驱动。

视觉与物联智能 2118

关于File.separator[转]

写好代码在模拟环境下测试,完全没问 题;但linux+tomcat下用的时候,却老是报告“No such file or diretory ”的异常,上传不了。后来发现是文件路径的问题。我的模拟测试环境是windows+tomcat,而令一个的环境是linux+tomcat,文件路径的 分隔符在windows系统和linux系统中是不一样。 比如说要在temp目录下建立一个test.txt文件,...

ruowu的专栏 1657

26版SPSS操作教程(高级教程第十章)

#大道之行,在于坚持 #本期内容:二分类Logistic回归模型 #由于导师最近布置了学习SPSS这款软件的任务,因此想来平台和大家一起交流下学习经验,这期推送内容接上一次高级教程第九章的学习笔记,希望能得到一些指正和帮助~

你好! 1599

java file.separator_关于Java的File.separator

一、File类在Windows下的路径分隔符(\)和在Linux下的路径分隔符(/)是不一样的,当直接使用绝对路径时,跨平台会报No Such file or diretory异常。File中还有几个与separator类似的静态常量,与系统有关,在编程中应尽量使用。ps:File file = new File("G:"+ File.separator +"demo.txt");File类是ja...

weixin_33824385的博客 3627

YOLO26优化:原创自研 | 自研独家创新DSAM注意力 ,基于BiLevelRoutingAttention注意力升级

提出新颖的注意力DSAM(Deformable Bi-level SpatialAttention Module),创新度极佳,适合科研创新,效果秒杀CBAM,Channel Attention+Spartial Attention升级为新颖的Deformable Bi-level Attention+Spartial Attention

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 365

2、Elixir与Erlang:构建高可用系统的利器

本文介绍了Elixir与Erlang在构建高可用系统方面的优势,深入探讨了Erlang的并发机制、容错能力以及分布式特性,并结合实际应用场景展示了其在服务器端开发中的强大能力。此外,还提供了学习资源和交流平台,帮助开发者快速上手并深入实践。

grape的博客 125

JAVA中的FILE.SEPARATOR

JAVA中的FILE.SEPARATOR 前些天遇到一个问题,困扰了好久,现在终于解决了。 问题:上传的图片不能正确显示。 我的开发环境是在Windows下,工程在Windows下能正常部署,上传的图片也可以正常的显 示。但是把工程部署在服务器上的时候,图片总是不能显示,很是让人郁闷,后来在网上找了 各种资料,问题终于解决了。 文件路径的分隔符在window

hujiao_jingling的专栏 864

STM32+ESP8266+MQTT协议连接阿里云物联网平台

一、环境介绍 单片机采用:STM32F103C8T6 上网方式:采用ESP8266,也可以使用其他设备代替,只要支持TCP协议即可。比如:GSM模块、有线网卡等。 开发软件:keil5 二、实现功能 通过阿里云物联网服务器实现设备数据远程上传、下发,实现数据交互。 在当前使用的开发板上有4盏LED灯、一个蜂鸣器、4个按键。 三、阿里云物联网服务器创建步骤 说明:如果没有账号的话,先点击网页右上角,注册一个账号,并完成实名认证再继续下一步。 产品名称根据自己情况填...

6万+

Java中File.separator作用详解

File.separator代表系统默认文件目录分隔符,即我们所说的“斜线” 但由于在Windows系统中分隔符为“\” 而在Linux系统中分隔符为“/” 例如: //在temp目录下建立一个test.txt文件 File file1 = new File ("C:\temp\test.txt");//Windows File file2 = new File ("/temp/test...

飞翔的企鹅的博客 9532

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Java中File类的separator属性

Java中File类的separator属性 现有如下需求:在C盘的tempt文件夹中创建名为“test.txt”的文件可以: File file = new File("C:\\tempt\\test.txt");也可以 File file = new File("C:/tempt/test.txt");还可以 File file = new File

gaohuanjie的专栏 5906

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

file.separator java_关于Java的File.separator

一、File类在Windows下的路径分隔符(\)和在Linux下的路径分隔符(/)是不一样的,当直接使用绝对路径时,跨平台会报No Such file or diretory异常。File中还有几个与separator类似的静态常量,与系统有关,在编程中应尽量使用。ps:File file = new File("G:"+ File.separator +"demo.txt");File类是ja...

weixin_39787826的博客 492

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Java 的 File.separator

File file=new File(); 这句是新建一个文件。 file.separator这个代表系统目录中的间隔符,说白了就是斜线,不过有时候需要双线,有时候是单线,你用这个静态变量就解决兼容问题了。 在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。 比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写: File file1 = new File (“C:\

weixin_45827203的博客 341

【Java中的File.separator】

此处使用File.separator(即为"“),获取路径中的最后一个”",就得到了路径:D:/IWHR/model_config。这个并不是我想要获取的路径,我想要获取的是:D:/IWHR/model_config\paramsSKBYMXPT/366/20250827174042/。那么可以使用以下语句进行优化,将无论“/”还是“\”,都替换成File.separator,然后再根据File.separator进行文件夹的提取,这样就肯定是正确的了。Linux/Unix系统上是/

江河键行的博客 309

关于Java的File.separator属性

File file=new File(); 这句是新建一个文件。 file.separator这个代表系统目录中的间隔符,说白了就是斜线,不过有时候需要双线,有时候是单线,你用这个静态变量就解决兼容问题了。 在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。 比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写: File file1 = new File (“C:\

YSY02的博客 646

Java配置文件路径File.separator

文件路径拼接

weixin_50386489的博客 475

JAVA中的File.separator

File file=new File(); 这句是新建一个文件。 file.separator这个代表系统目录中的间隔符,说白了就是斜线,不过有时候需要双线,有时候是单线,你用这个静态变量就解决兼容问题了。 在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。 比如说要在temp目录下建立...

StackOverFlow_的博客 215
上一篇: Copy" did not complete normally. Please see the log for more information
下一篇: android应用程序跳转到系统的各个设置页面
chindroid
博客等级 码龄15年 159粉丝 33原创
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值