1// sdk会根据文件后缀填写file的content_type,请确保后缀填写正确。2StringfilePath="/your/home/test.png";3URIuri=newURI("https://api.mch.weixin.qq.com/v3/marketing/shopping-receipt/shoppingreceipts");4Filefile=newFile(filePath);5try(FileInputStreamfileIs=newFileInputStream(file)){6Stringtransaction_id="420000153220220···158964";7Stringtransaction_mchid="1900006#";8Stringtransaction_sub_mchid="";9Stringout_trade_no="sdk123456789202205#809";10Stringopenid="oK7fFt8zzEZ909XH-LE2#";11Stringupload_time="2022-05-07T15:39:35.000+08:00";12Stringmeta="";13Stringsha256=DigestUtils.sha256Hex(fileIs);14if(transaction_sub_mchid==""){15meta=String.format("{\"transaction_id\":\"%s\",\"transaction_mchid\":\"%s\",\"out_trade_no\":\"%s\",\"openid\":\"%s\",\"sha256\":\"%s\",\"upload_time\":\"%s\"}}",transaction_id,transaction_mchid,out_trade_no,openid,sha256,upload_time);16}else{17meta=String.format("{\"transaction_id\":\"%s\",\"transaction_mchid\":\"%s\",\"transaction_sub_mchid\":\"%s\",\"out_trade_no\":\"%s\",\"openid\":\"%s\",\"sha256\":\"%s\",\"upload_time\":\"%s\"}}",transaction_id,transaction_mchid,transaction_sub_mchid,out_trade_no,openid,sha256,upload_time);18}19try(InputStreamis=newFileInputStream(file)){20WechatPayUploadHttpPostrequest=newWechatPayUploadHttpPost.Builder(uri)21.withFile(file.getName(),meta,is)22.build();23try(CloseableHttpResponseresponse=httpClient.execute(request)){24// do something useful with the response body25// and ensure it is fully consumed26Strings=EntityUtils.toString(response.getEntity());27System.out.println("result: "+s);28}29}30}