如何在OpenFileDialog中显示完整路径和文件名

时间:2014-10-06 22:57:54

标签: c# winforms openfiledialog

我正在使用openfiledialog打开文件calender.txt,当它打开时,它会显示日历作为文件名,而过滤器框中的.txt显示没有目录c:\

任何人都可以告诉我如何编码对话框,以便我在对话框中获得C:\ calender

private void openFileButton_Click(object sender, EventArgs e)
{
     OpenFileDialog ofd = new OpenFileDialog();
     ofd.InitialDirectory = (@"C:\");
     ofd.Filter = ("*.txt| Text File");
     ofd.FileName = "calender.txt";
     ofd.CheckFileExists = false;

     if (ofd.ShowDialog() == DialogResult.OK)
     {
        if (CheckValidity(ofd.FileName))
        {
            try
            {
                streamWriter sw = new streamWriter(ofd.FileName);
            }
            catch (FileLoadException flEx)
            {
                MessageBox.Show(flEx.Message);
            }
            else
            {
            }
        }
    }
}

2 个答案:

答案 0 :(得分:1)

可以在对话框中将文件名设置为您喜欢的任何名称。如果要在开始时显示完整路径,可以执行以下操作:

OpenFileDialog ofd = new OpenFileDialog();
ofd.InitialDirectory = (@"C:\");
ofd.FileName = Path.Combine(ofd.InitialDirectory, "calendar.txt");

请注意,一旦用户选择了不同的文件,这将不会保持这样,但实际上对您来说并不重要,因为一旦他们点击OpenFileName就会满了你的道路。

答案 1 :(得分:0)

您可以使用

选择用户选择的路径
string path_selected = ofd.FileName; 

例如" c://users/user/desktop/myfile.txt"

我不知道任何返回文件名的方法,但您可以使用字符串方法编辑路径并获取文件名