jar包里的图片上传处理办法

当面临jar包中图片无法通过常规方式获取路径并上传的问题时,可以采取两种解决方案。一是利用docker容器复制命令将jar包内的图片复制到绝对路径下进行操作;二是将图片名存入json文件,通过读取json文件内容,以流的方式逐个处理图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为获取jar包中的文件路径的格式已经变为*.jar!*(除了第一个),这种格式的路径,不能通过new File的方式找到文件。因此如果是单文件,可以用流来获取,多文件因为不能获取绝对路径因此不能用文件循环上传。解决办法:
方法1:自己创建一个绝对路径,不存放在jar里面【docker 容器有复制命令,可以把jar包里的文件复制出来】,然后使用绝对路径进行操作
方法2:因为不能用File 来直接读取,但是可以直接用流,因此换种思考方法,把所有的图片名称写入一个json文件,然后读取json 文件里的所有图片名,循环图片名,然后一个个读取成流进行操作

如:icon.json

{
   
  "文件使用说明": "跟随版本需求,按要求新增系统参数。系统启动时,自动上传图片。",
  "参数取值说明": "分居民端:resident与医生端:doctor,值为图片名称。",
  "输入方式说明": "0:普通文本text;1:长内容文本textarea;2:单选;3:多选",
  "适用角色说明": "0:医生,1:居民",
  "doctoraddress": "menuicons/doctor/",
  "residentaddress": "menuicons/resident/",
  "parameters": {
   
    "doctor": [
      "注册居民.png"
    ],
    "resident": [
      "自助建档.png"
    ]
  }
}
log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值