簡體   English   中英

如何在C#中的start選項中提供命令行參數的相對路徑

[英]How can I provide relative path to command line arguments in start option in C#

我有一個目錄文件夾,每天可以獲取100個文件。

我的程序從IN文件夾中選擇文件,並在處理它們后將它們放入Out文件夾中。

我遇到的問題是當我在

項目>屬性>調試>開始選項>命令行參數

(即“ C:\\ Data \\ IN \\ File.txt”),然后程序成功執行並找到文件,但是當我提供“ C:\\ Data \\ IN”之類的位置時,它沒有選擇任何文件並拋出了例外

找不到文件“ C:\\ Data \\ In”。 InnerException為Null。

IN文件夾每天將獲取100個不同的文件。 我怎么解決這個問題?

您需要使用Directory.GetFiles()靜態類來獲取要處理的文件列表。 Microsoft文檔中有一個有用的示例。

https://msdn.microsoft.com/zh-CN/library/07wt70x2(v=vs.110).aspx

“ C:\\ Data \\ IN”不是相對路徑,它是包含文件的目錄的絕對路徑。 您可以從絕對目錄路徑獲取如下文件:

string[] files = Directory.GetFiles(@"C:\Data\IN", "*.txt");

如果只知道相對於EXE的目錄路徑,則可以這樣獲得絕對路徑:

string dir = Path.Combine(Application.StartupPath, @"Data\IN");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM