如何准确的获取网络文件的大小

如何准确的获取网络文件的大小,第1张

以JAVA为例:

try{ 

      System.out.println("正在链接URL") 

      url=new URL("网络文件地址") 

      HttpURLConnection urlcon=(HttpURLConnection)url.openConnection() 

      //根据响应获取文件大小

      fileLength=urlcon.getContentLength() 

      if(urlcon.getResponseCode()>=400){ 

      System.out.println("服务器响应错误") 

      System.exit(-1) 

      } 

      if(fileLength<=0) 

      System.out.println("无法获知文件大小") 

      //打印信息 

      printMIME(urlcon) 

      System.out.println("文件大小为:"+fileLength+".") 

      //获取文件名 

      String trueurl=urlcon.getURL().toString() 

      String filename=trueurl.substring(trueurl.lastIndexOf('/')+1) 

      fileOut=new File("D://",filename) 

   } 

   catch(MalformedURLException e){ 

      System.err.println(e) 

   } 

   catch(IOException e){ 

      System.err.println(e) 

   }

import java.net.*

import java.io.*

public class URLConnectionDemo{

    public static void main(String[] args)throws Exception{

        URL url = new URL("http://www.scp.edu.cn/pantoschoolzz/BG/Bord/Message/DownloadMessageAttachment.aspx?ID=215")

        URLConnection uc = url.openConnection()

        String fileName = uc.getHeaderField(6)

        fileName = URLDecoder.decode(fileName.substring(fileName.indexOf("filename=")+9),"UTF-8")

        System.out.println("文件名为:"+fileName)

        System.out.println("文件大小:"+(uc.getContentLength()/1024)+"KB")

        String path = "D:"+File.separator+fileName

        FileOutputStream os = new FileOutputStream(path)

        InputStream is = uc.getInputStream()

        byte[] b = new byte[1024]

        int len = 0

        while((len=is.read(b))!=-1){

            os.write(b,0,len)

        }

        os.close()

        is.close()

        System.out.println("下载成功,文件保存在:"+path)

    }

}

1、文件大小超过10m导致无法上传至云端(免费用户上传至文档的文件大小最大10m);

2、网络异常,到时文件无法成功保存(可先按键盘F12另存为至本地后排查电脑网络后再次尝试另存为保存至云文档);

3、云文档空间已满,导致文件无法上传至云端。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11985214.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存