我有一个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:\"的文件。
如何从任何磁盘和目录加载文件?
答案 0 :(得分:4)
您正在使用OpenFileDialog.SafeFileName
,它只返回文件名,而不是路径。通过预先\
,您将无法从当前磁盘的根目录中读取文件。
只需使用FileName
属性,其中包含完整路径:
txtArchivoTotal.Text = dialogoArchivo.FileName