如何进入bin目录

问题描述 投票:0回答:1

我有一个文件位于

....debug\net8.0\files\file.txt

要访问此文件,我有以下代码

var dirLoc = Path.GetDirectoryName(Assembly.GetEntryAssembly()!.Location); 
var path = Path.Combine(dirLoc!, "\\files\\file.csv");

我遇到的问题是从未找到路径。我已将双斜杠 (\) 更改为单 \ 并尝试使用

.Replace(@"\\", @"\");
但即使如此,也找不到路径。

然后我复制了

path
,然后进入我的本地资源管理器窗口,该窗口说找不到它,但如果我将两个斜杠删除为1,那么它就起作用了。

我四处阅读并尝试了不同的代码来使其工作,但我想我可能错过了一些小东西?我尝试过转义代码,但要么我做错了,要么错过了一些东西。

任何人都可以指出我正确的方向吗?

c# path asp.net-core-mvc .net-8.0
1个回答
0
投票

使用

Path.Combine
时,不应添加前导或尾随反斜杠 (
\\
)。前导反斜杠是一条丢弃所有路径信息并从根开始的指令,并产生
@"\files\file.csv"

这有效:

string path = Path.Combine (dirLoc, "files\\file.csv");

或者这个(为了更好的跨平台支持):

string path = Path.Combine (dirLoc, "files", "file.csv");
© www.soinside.com 2019 - 2024. All rights reserved.