c#在标签中以kB为单位显示文件的大小

时间:2013-11-20 17:13:59

标签: c# file size label fileinfo

嗨大家好奇是否有人可以帮助我解决这个问题,我已经玩了几个星期的c#所以我仍然是一个处女,我一直有的问题是与fileinfo构造函数,我想在图像/音频文件/视频文件下面的标签中显示kb文件的大小(我正在构建一个基本的媒体播放器),这是我到目前为止在这个问题上的代码:

public void GetFileSize(String FileName)         {

        FileInfo fs = new FileInfo (FileName);
        long filesize = FileName.Length / 1024;

        /*string filesize = System.Convert.ToString(size);*/
        picFileSizeLabel.Text = System.Convert.ToString(filesize);


    }

由于某种原因,标签只显示0,当我将其更改为“long filesize = FileName.Length”并且不除以1024时我会在标签中显示51或有时55,任何帮助或评论都将是理解

1 个答案:

答案 0 :(得分:1)

问题:您正试图获取FileName Length而不是File Length

<强>解决方法1
这个:

 long filesize = FileName.Length / 1024;

应该是:

 long filesize = fs.Length / 1024;

最后看起来应该是这样的:

FileInfo fs = new FileInfo (FileName);
long filesize = fs.Length / 1024;

解决方案2:KB

末尾添加filesize
picFileSizeLabel.Text = System.Convert.ToString(filesize)+"KB";