Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在另一个文件夹中具有数据集_C#_Winforms_Filepath - Fatal编程技术网

C# 在另一个文件夹中具有数据集

C# 在另一个文件夹中具有数据集,c#,winforms,filepath,C#,Winforms,Filepath,我有一个Windows窗体应用程序,它可以处理2个数据集(文本文件)。如何将文本文件的路径从C驱动器更改为Documents文件夹,地址如下:Libraries\Documents? 如果我想把它们复制到桌面上,路径是什么? PS:我将数据集复制到文档中并更改 StreamReader fileitem = new StreamReader("c:\\dataset.txt");\ 进入: 但它不起作用 想法?您需要环境。GetFolderPath string myDocuments = E

我有一个Windows窗体应用程序,它可以处理2个数据集(文本文件)。如何将文本文件的路径从
C驱动器
更改为
Documents文件夹
,地址如下:Libraries\Documents? 如果我想把它们复制到桌面上,路径是什么? PS:我将数据集复制到文档中并更改

StreamReader fileitem = new StreamReader("c:\\dataset.txt");\
进入:

但它不起作用


想法?

您需要
环境。GetFolderPath

string myDocuments = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
string desktop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
不要连接字符串来创建路径,而是使用
path。合并
。所以,当您需要桌面的子文件夹时,您将使用

string subFolder = Path.Combine(desktop,"MySubFolderName");
那么你的情况呢

StreamReader fileitem = new StreamReader(Path.Combine(desktop,"dataset.txt"));

您@SriramSakthivel的意思是,我必须这样做:string desktop=Environment.GetFolderPath(Environment.SpecialFolder.desktop);StreamReader fileitem=新的StreamReader(我的文档+“dataset.txt”)@用户3403967更新了您要求的答案感谢您的答案@SriramSakthivel。如果我想更改应用程序的exe路径。我的意思是,我将文本文件复制到应用程序的…/bin/debug路径中,这样我就可以从任何地方运行应用程序,如笔驱动器或外部硬盘(如便携式应用程序)使用
应用程序。StartupPath
请您通过注释详细说明您的答案@SriramSakthivel?“Libraries”不是真正的文件夹。它是一个虚拟文件夹,将其他文件夹“组合”到一个组中。所以你不能在路径名中使用它。谢谢你的回答@mnieto。如果我想更改应用程序的exe路径。我的意思是,我将文本文件复制到应用程序的…/bin/debug路径中,这样我就可以从任何类似笔驱动器或外部硬盘(如便携式应用程序)的位置运行应用程序。在这种情况下,为文档设置相对路径。并且,在解决方案资源管理器中,将
copy to output directory
属性设置为
copy if newer
StreamReader fileitem = new StreamReader(Path.Combine(desktop,"dataset.txt"));
string documents = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
StreamReader fileitem = new StreamReader(Path.Combine(documents, "dataset.txt");