1

F# インタラクティブを使用すると、明らかにこのコード行は、件名に示されているパスを検索します。

let files = Directory.GetFiles("MyFolderPath")

現在の fsx ファイルが実行されているのと同じフォルダーを検索するようにインタラクティブに設定する方法はありますか? または、この動作をまったく制御する方法はありますか? 私は明らかに bin\Debug で始まる検索に慣れており、この動作は私をうんざりさせています。

前もって感謝します、

ボブ

4

2 に答える 2

3

プロセス fsi.exe が開始される場所によって異なります。Fsi は IDE から分離されているため、どのファイルが開いているかわかりません。Visual Studio を実行すると、fsi の現在のディレクトリは一時フォルダーになります。

fsx ファイルを実行する (fsi foo.fsxまたは [Run with F# Interactive] を右クリックする) と、現在のディレクトリから fsi が実行されます。

自分がどこにいるか (どのディレクトリにいるか) を確認するには、次のようにします。

Directory.GetCurrentDirectory()

ディレクトリを変更するには、次のコマンドを使用します。

Directory.SetCurrentDirectory(...)
于 2011-04-13T17:49:52.650 に答える
0

F# Interactive は、現在の F# プログラムから完全に独立しています (実際、別の CMD シェルで実行されていると考えてください)。残念ながら、現在開いている .fsx ファイルを取得する簡単な方法はありません。

何かを引き出すことができるかもしれませんが、fsi.CommandLineArgsこれを確認するためのVSが手元にありません.

于 2011-04-13T17:39:31.287 に答える