繁体   English   中英

从OpenFileDialog获取文件大小?

[英]Getting filesize from OpenFileDialog?

如何在Openfiledialog中获取当前所选文件的文件大小?

您无法直接从OpenFieldDialog获取它。

您需要获取文件路径并从中构建一个新的FileInfo对象,如下所示:

var fileInfo = new FileInfo(path);

从FileInto你可以得到像这样的文件的大小

fileInfo.Length

有关更多信息,请查看此msdn页面。

我认为有3种方法,创建自定义打开对话框或通过代码将视图设置为详细信息或要求用户使用详细信息视图

没有互操作,就像第一个评论一样,一旦对话完成,即选择了文件,这将给出大小。

public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                if (openFileDialog1.Multiselect)
                {
                    long total = 0;
                    foreach (string s in openFileDialog1.FileNames)
                        total += new FileInfo(s).Length;
                    MessageBox.Show(total.ToString());


                }
                else
                {
                    MessageBox.Show(new FileInfo(openFileDialog1.FileName).Length.ToString());
                }


            }
        }

对话期间的文件大小我觉得需要使用互操作

安德鲁

如果您的意思是对话框正在运行,我怀疑您只是将文件视图更改为详细信息。 但是,如果你的意思是编程,我怀疑你必须在选择文件时挂钩Windows消息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM