我有一個C#項目(Windows控制檯應用程序)。 我已經創建了一個名爲Data的文件夾。文件夾Data中有兩個文本文件。從文件夾中讀取文件
如何從「數據」文件夾中讀取文本文件。 我嘗試了下面的東西。
string[] files = File.ReadAllLines(@"Data\Names.txt")
這是thowing錯誤,找不到文件。
我檢查了一些Stackoverflow答案發布之前,沒有一個是爲我工作。
我該怎麼辦?謝謝!
我有一個C#項目(Windows控制檯應用程序)。 我已經創建了一個名爲Data的文件夾。文件夾Data中有兩個文本文件。從文件夾中讀取文件
如何從「數據」文件夾中讀取文本文件。 我嘗試了下面的東西。
string[] files = File.ReadAllLines(@"Data\Names.txt")
這是thowing錯誤,找不到文件。
我檢查了一些Stackoverflow答案發布之前,沒有一個是爲我工作。
我該怎麼辦?謝謝!
下面的代碼應該工作:
string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Data\Names.txt");
string[] files = File.ReadAllLines(path);
我的文件夾和文件不存在於程序集文件夾中:s ..爲什麼? –
在Visual Studio中,標記文件,然後將'Build Action'設置爲'Content',將'Copy Action Output'設置爲'Copy always'。 –
只需使用@「Data \ Name.txt」應用@FlorianMoser符號 –
這取決於哪裏就是你的數據文件夾
要得到所在目錄下.exe文件是:
AppDomain.CurrentDomain.BaseDirectory
爲了得到當前目錄:
Environment.CurrentDirectory
然後你就可以連接您的目錄路徑(@"\Data\Names.txt"
)
如果你需要得到一個名爲「數據」文件夾中的所有文件,只需將其代碼如下
string[] Documents = System.IO.Directory.GetFiles("../../Data/");
現在的「文檔」包括兩個文本的完整對象名稱的數組'數據'文件夾'數據'中的文件。始終
@Bunyip :你需要閱讀文本文件的內容還是隻需要知道文件夾中的文件? –
謝謝你,爲我工作! –
複製到輸出目錄設置,那麼請嘗試以下操作:
Directory.SetCurrentDirectory(AppDomain.CurrentDomain.BaseDirectory);
String Root = Directory.GetCurrentDirectory();
我有一個C#項目(Windows控制檯應用程序)。我在項目中創建了一個名爲Images的文件夾。有一個名爲MyIcon.ico的ico文件。我在下面的Images文件夾中訪問了MyIcon.ico。
this.Icon = new Icon(@"../../Images/MyIcon.ico");
使用此代碼在文件夾中讀取所有文件和子文件夾也
class Program
{
static void Main(string[] args)
{
getfiles get = new getfiles();
List<string> files = get.GetAllFiles(@"D:\Document");
foreach(string f in files)
{
Console.WriteLine(f);
}
Console.Read();
}
}
class getfiles
{
public List<string> GetAllFiles(string sDirt)
{
List<string> files = new List<string>();
try
{
foreach (string file in Directory.GetFiles(sDirt))
{
files.Add(file);
}
foreach (string fl in Directory.GetDirectories(sDirt))
{
files.AddRange(GetAllFiles(fl));
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
return files;
}
}
谷歌「當前目錄」。可執行文件不會從你的源代碼文件夾中運行! –
在構建項目時是否將此數據文件夾複製到輸出中?檢查文件上的選項並進行更正。 – ryadavilli
設置是始終複製到輸出目錄。 – SKJ