File对象只有getFileName方法,文件的大小和ContentType如何获得?或者用其它对象也行?

解决方案 »

  1.   

    答:向服务器发送一个HEAD请求。服务器的响应中:
    Content-Type: text/css //文件类型
    Content-Length: 207 //文件大小
    若文件类型是写在HTML文档内部,则读取出HTML内部的
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    进行处理。以上仅供你参考。
      

  2.   

    File f = new File("C:\\Downloads\\plato_free070821.rar");
    System.out.println("文件大小为:" + (double)(f.available()/1024/1024)
          + "M");*/
    System.out.println("文件大小为:"+(double)(f.length()/1024/1024)+"M");在网上找到的!!!!
      

  3.   

    文件大小我找到了,可以直接用File的length属性,但是ContentType呢?
      

  4.   

    答:你一个客户机程序怎么能调用File的length来获取服务器上的文件大小?楼主的需要到底是什么啊?需求不明(问题说不清楚),浪费了别人的时间啊。
      

  5.   

    ContentType 不是文件的属性,而是 HTTP 协议中的一个属性。
      

  6.   

    response.getContentType();
    ?????????
      

  7.   

    private URL url;
    url=new URL("http://www.eever.net/files/5/68507A46-DBE1-4F04-9831-AAFDBF4BB7BF.wma");
    HttpURLConnection urlcon=(HttpURLConnection)url.openConnection();
    private long fileLength=0;
    fileLength=urlcon.getContentLength();
    System.out.println(urlcon.getContentType());
    ???这样?
      

  8.   

    ContentType 并不是文件本身的固有属性,从本质上说,它是“识别”出来的。换句话说,你写的程序,认为它是什么 type,它就是什么 type。一般而言,“识别”工作有两个途径:1. 根据文件的扩展名;2. 根据文件开头的若干个字节。好像网上应该能找到专门的第三方开发包做这个事情。