C# 如何生成驻留在另一台计算机上的文件的路径
我从本地网络的另一台PC上的数据库加载数据,它工作得非常好 我只需输入服务器名和数据库路径,就可以了 现在我还在服务器上的文件夹中查找最新修改的文件,它在本地pc上运行良好,但当我使用服务器名称加路径时,它会生成与可执行文件夹路径连接的路径C# 如何生成驻留在另一台计算机上的文件的路径,c#,visual-studio-2010,path,C#,Visual Studio 2010,Path,我从本地网络的另一台PC上的数据库加载数据,它工作得非常好 我只需输入服务器名和数据库路径,就可以了 现在我还在服务器上的文件夹中查找最新修改的文件,它在本地pc上运行良好,但当我使用服务器名称加路径时,它会生成与可执行文件夹路径连接的路径 string tmpPath=string.Empty; if (serverName != "") { tmpPath = "\\" + serverName + "\\" + TrackingPath + "\\u00" + ID; }
string tmpPath=string.Empty;
if (serverName != "")
{
tmpPath = "\\" + serverName + "\\" + TrackingPath + "\\u00" + ID;
}
在这之后,我只是简单地读取文件夹以获得最新修改的文件
但路径变为…Debug\servername\trackingpath。。。。。这是错误的
示例
Servename=testServer
TrackingPath= TmpFolder\SharedFolder\TrackingFolder
因此,根据我的代码,它应该变成\\testServer\\TmpFolder\SharedFolder\TrackingFolder
,而不是project..\Debug\\\testServer\\TmpFolder\SharedFolder\TrackingFolder
因此,我如何从testserver中读取此文件夹来处理路径文件,并记住反斜杠是C#中的一个特殊字符,用于转义其他字符。所以你需要
string ID = "test";
string TrackingPath = "tracking";
string serverName = "server_name";
string tmpPath=string.Empty;
if (serverName != "")
{
tmpPath = Path.Combine(@"\\", serverName, TrackingPath ,"u00" + ID);
}
Console.WriteLine(tmpPath);
若要在字符串中插入反斜杠,需要将其加倍或以
使用3.5框架及以下版本
tmpPath = Path.Combine(Path.Combine(Path.Combine(@"\\", serverName), TrackingPath) ,"u00" + ID);
嗯,效率不是很高,但很有效我们需要更多细节。这是调试的时候吗?什么是
serverName
?什么是跟踪路径?为什么不使用Path.Combine<代码>http://msdn.microsoft.com/en-us/library/system.io.path.combine.aspx@Arran更新了我的描述。如中所示,serverName
和TrackingPath
的值来自哪里?他们被传进来了吗?它们放在哪里?它们是如何设置的?如中所示,向我们展示设置它们的实际代码。这些参数来自数据库,它们始终是serverName=abc,跟踪路径开始,如我在示例中所述。它表示只能将2个参数传递给path.CombineNo,检查更好您可以传递一个数组->错误5方法“Combine”不重载需要4个参数我正在使用…3.5问题不是路径错误等,问题是它在调试文件夹中查找路径!它应该在哪里使用servername+跟踪路径。这就是问题所在。需要4.0,好的,你可以分成三个单独的通话