2012-06-14 31 views
1

我使用Acrobat返回,而不是Windows路径的Unix路径Unix文件路径转换为Windows路径。所以即时通讯想知道如果有一种方式在vb.net将路径转换为Windows路径。如何使用VB.net

我试着使用:

docs(i) = javaScriptObj.path().ToString.Replace("/", "\").Substring(1) 
position = docs(i).IndexOf("\") 
docs(i) = docs(i).Substring(0, position) + ":\" + docs(i).Substring(position + 1) 

这仅适用于本地文件,但是当即时通讯开始使用的网络驱动器失败。由于

回答

3

试试这个:

Private Function UnixPathToWindowsPath(UnixPath As String) As String 
    If String.IsNullOrWhiteSpace(UnixPath) Then Return String.Empty 
    Dim chunks = UnixPath.Split(New Char() {"/"c}, StringSplitOptions.RemoveEmptyEntries) 
    If chunks.Any Then 
     If chunks(0).Length = 1 Then 'Single character root, assume drive letter. 
     Return String.Join("\", chunks).Insert(1, ":") 
     Else 
     Return "\\" & String.Join("\", chunks) 
     End If 
    Else 
     Return IO.Path.DirectorySeparatorChar 
    End If 
End Function 

这假定全路径名,而不是局部的路径。

+1

尼斯,它的工作,谢谢 –