m0_60983761 2023-03-15 15:10 采纳率: 89.5%
浏览 19
已结题

java复制linux服务器下文件

java写了个复制文件夹下所有内容到webapps/ROOT 目录下的接口。在windows下测试是正常的层级,然而到linux服务器上层级的名称都被拼接到了文件名中, 我的文件路径写的是/data/tomcat/webapps/ROOT/ 这个该怎么搞啊

img

  • 写回答

3条回答 默认 最新

  • 海拥✘ 全栈领域优质创作者 2023-03-15 15:24
    关注

    可能是因为在Windows和Linux系统中,文件路径的分隔符不同导致的。在Windows系统中,文件路径分隔符为反斜杠\,而在Linux系统中,文件路径分隔符为正斜杠/。

    为了在不同的系统上都能正确地识别文件路径,可以使用Java中的File.separator来表示文件路径分隔符。File.separator是Java中表示文件路径分隔符的常量。

    例如,在您的代码中,如果您要表示/data/tomcat/webapps/ROOT/这个路径,可以使用以下方式:

    String rootPath = File.separator + "data" + File.separator + "tomcat" + File.separator + "webapps" + File.separator + "ROOT" + File.separator;
    

    这样,在不同的操作系统上运行时,就可以正确地识别文件路径分隔符,并将文件复制到正确的位置。

    希望这个解决方案对您有所帮助!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月23日
  • 已采纳回答 3月15日
  • 创建了问题 3月15日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装