Home  >  Article  >  Backend Development  >  C# Get selected file information

C# Get selected file information

黄舟
黄舟Original
2017-02-21 11:00:321925browse

C# 获取选择文件信息

private bool GetDocuContent(out byte[] Content, out string FileName, out string ExtensionName)
        {
            long MaxLength = 10485760; //10M以内
            Content = null;
            ExtensionName = string.Empty;
            FileName = string.Empty;
            OpenFileDialog vsOpenFileDialog = new OpenFileDialog();
            vsOpenFileDialog.InitialDirectory = "d:\\";
            vsOpenFileDialog.Filter = "All files (*.*)|*.*";
            vsOpenFileDialog.FilterIndex = 0;
            vsOpenFileDialog.Multiselect = false;
            try
            {
                if (vsOpenFileDialog.ShowDialog() == DialogResult.OK)
                {
                    //Path.GetExtension方法:返回指定的路径字符串的扩展名
                    ExtensionName = Path.GetExtension(vsOpenFileDialog.FileName);
                    //Path.GetFileName方法:返回指定路径字符串的文件名和扩展名。
                    FileName = Path.GetFileName(vsOpenFileDialog.FileName);
                    FileInfo vsFileInfo = new FileInfo(vsOpenFileDialog.FileName);
                    if (vsFileInfo.Length > MaxLength)
                    {
                        MessageBox.Show("文件超长!");
                        return false;
                    }
                    //vsFileInfo.OpenRead Method:Creates a read-only FileStream.
                    FileStream fileStream = vsFileInfo.OpenRead();
                    if (fileStream.Length == 0)
                    {
                        MessageBox.Show("空文件!");
                        return false;
                    }
                    Content = new byte[fileStream.Length];
                    int Size = fileStream.Read(Content, 0, Convert.ToInt32(fileStream.Length));
                    fileStream.Close();
                    return true;
                }
                return false;
            }
            catch (Exception ex)
            {
                return false;
            }
        }

小注:

1、 C# Winform OpenFileDialog 控件



2、C# FileStream.Read Method


假如选择的文件1111.png,是跟踪内容显示:

ExtensionName = Path.GetExtension(vsOpenFileDialog.FileName)


FileName = Path.GetFileName(vsOpenFileDialog.FileName)


FileInfo vsFileInfo = new FileInfo(vsOpenFileDialog.FileName)


Content = new byte[fileStream.Length]


4、假如相对返回的byte[] Content加密的话,可以使用:Convert.ToBase64String(Content),该函数的返回值,依然是:byte[]类型的。


以上就是C# 获取选择文件信息的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn