OpenFileDialog仅从根目录加载文件

时间:2015-06-18 18:01:00

标签: c# visual-studio-2010

我有一个C#应用程序将一些文件加载​​到我的数据库中,但是当我尝试加载文件时,应用程序只从一个位置(C :)加载,但我需要能够从任何位置加载文件。 我用这个函数加载文件

private void cmdArchivoTotal_Click(object sender, RoutedEventArgs e)
{
    OpenFileDialog dialogoArchivo = new OpenFileDialog();

    dialogoArchivo.InitialDirectory =
        Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
    dialogoArchivo.Filter = "CSV Files (*.csv)|*.csv";

    if (dialogoArchivo.ShowDialog().Value)
        txtArchivoTotal.Text =
            System.IO.Path.GetFullPath("\\"+dialogoArchivo.SafeFileName);             
}

起初我以为这是用于在调试模式下运行应用程序,但是甚至部署应用程序只加载来自" C:\"的文件。

如何从任何磁盘和目录加载文件?

1 个答案:

答案 0 :(得分:4)

您正在使用OpenFileDialog.SafeFileName,它只返回文件名,而不是路径。通过预先\,您将无法从当前磁盘的根目录中读取文件。

只需使用FileName属性,其中包含完整路径:

 txtArchivoTotal.Text = dialogoArchivo.FileName
相关问题