WinForm选择文件或文件夹

我不是罗大锤 2021年11月23日 129次浏览

选择文件实现一

private void button10_Click(object sender, EventArgs e)
{
    //初始化一个OpenFileDialog类
    OpenFileDialog fileDialog = new OpenFileDialog();
 
    //判断用户是否正确的选择了文件
    if (fileDialog.ShowDialog() == DialogResult.OK)
    {
    	//获取用户选择文件的后缀名
           string extension = Path.GetExtension(fileDialog.FileName);
           //声明允许的后缀名
           string[] str = new string[] { ".gif", ".jpge", ".jpg" };
           if (!((IList)str).Contains(extension))
           {
           	MessageBox.Show("仅能上传gif,jpge,jpg格式的图片!");
    	}
           else
           {
    		//获取用户选择的文件,并判断文件大小不能超过20K,fileInfo.Length是以字节为单位的
                    FileInfo fileInfo = new FileInfo(fileDialog.FileName);
                    if (fileInfo.Length > 20480)
                    {
                        MessageBox.Show("上传的图片不能大于20K");
                    }
                    else
                    {
                        //在这里就可以写获取到正确文件后的代码了
                    }
    	}
    }
}

选择文件实现二以及选择文件夹实现

private void btnFile_Click(object sender, EventArgs e)
{
    OpenFileDialog fileDialog = new OpenFileDialog();
    fileDialog.Multiselect = true;
    fileDialog.Title = "请选择文件";
    fileDialog.Filter = "所有文件(*.*)|*.*";
    if (fileDialog.ShowDialog() == DialogResult.OK)
    {
    	string file = fileDialog.FileName;
    	MessageBox.Show("已选择文件:" + file, "选择文件提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
    }
 
private void btnPath_Click(object sender, EventArgs e)
{
    FolderBrowserDialog dialog = new FolderBrowserDialog();
    dialog.Description = "请选择文件路径";
    if (dialog.ShowDialog() == DialogResult.OK)
    {
        string foldPath = dialog.SelectedPath;
        MessageBox.Show("已选择文件夹:" + foldPath, "选择文件夹提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
}
 
private void btnOpen_Click(object sender, EventArgs e)
{
    System.Diagnostics.Process.Start("Explorer.exe", "c:\\windows");
}