用FileInfo.Length
string        dirName = "C:\\";
DirectoryInfo dirInfo = new DirectoryInfo(dirName);Console.WriteLine("{0} contains the following files:", dirName);
Console.WriteLine("Size\t Filename");foreach (FileInfo fileInfo in dirInfo.GetFiles()) {
    try { 
        Console.WriteLine("{0}\t {1}", 
                          fileInfo.Length, fileInfo.Name);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    }
    catch (IOException e) {
        Console.WriteLine("\t {0}: {1}", fileInfo.Name, e.Message);
    }
}

解决方案 »

  1.   

    vb的跟C#的没有区别,用的都是FileInfo 对象
      

  2.   

    刚才acewang(**^o^**) 的代码只能得到大小,而无法得到图片的尺寸
      

  3.   

    下面的代码是限制上传图片的长度.与你想要得到上传图的的大小差不多.
    在后台程序中picshow.Height 就是图片的高,picshow.Width 图片的的宽
    <HTML>
    <HEAD>
    <title>Upload Image</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </HEAD>
    <body bgcolor="#ffffff" text="#000000">
    <form name="IUpload" action="upfile.asp" method="post">
    <p><input type="file" name="picsrc" size="40" onchange="picshow.src=document.IUpload.picsrc.value">
    <input type="button" value="上载" onclick="detect()"></p>
    </form>
    <p></p>
    <asp:Image ID="picshow" Runat="server" name="picshow" ></asp:Image>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function imgExceedSize(w,h){
    if(!document.IUpload.picsrc.value==""){
    if(picshow.width>w||picshow.height>h){
    alert("图像尺寸:"+picshow.width+"X"+picshow.height+"。\\n图像尺寸过大!你只能上传尺寸为 "+w+"×"+h+"的图像,请重新浏览图片!");
    return true;
    }else{
    return false;
    }
    }else{
    return true;
    }
    }function detect(){
    var ok=imgExceedSize(50,50);
    if(ok){
    document.IUpload.reset();
    }else{
    document.IUpload.submit();
    }
    }//-->
    </SCRIPT>
    </body>
    </HTML>