Ich schrieb den obigen Code mit String.Concat
und Path.Combine
, um Netzwerkpfad zu erhalten. Aber es ist nur ein Workaround und keine konkrete Lösung und kann fehlschlagen. Gibt es eine konkrete Lösung für einen Netzwerkpfad?Wie konvertiert man einen lokalen Dateipfad im PC in einen Netzwerkrelativ- oder UNC-Pfad?
Antwort
Sie gehen davon aus, dass Ihre E:\folder1
lokalen Pfad als \\mypc\folder1
freigegeben ist, was im Allgemeinen nicht wahr ist, also bezweifle ich eine allgemeine Methode, die tut, was Sie tun möchten, existiert.
Sie sind auf dem richtigen Weg bei der Umsetzung, was Sie erreichen wollen. Sie können weitere Hilfe von System.IO.Path
erhalten; siehe Path.GetPathRoot
auf MSDN für zurückgegebene Werte entsprechend verschiedene Art von Pfad im Eingang
string GetNetworkPath(string path)
{
string root = Path.GetPathRoot(path);
// validate input, in your case you are expecting a path starting with a root of type "E:\"
// see Path.GetPathRoot on MSDN for returned values
if (string.IsNullOrWhiteSpace(root) || !root.Contains(":"))
{
// handle invalid input the way you prefer
// I would throw!
throw new ApplicationException("be gentle, pass to this function the expected kind of path!");
}
path = path.Remove(0, root.Length);
return Path.Combine(@"\\myPc", path);
}
Schön, aber unsere Lösung wird nur für Microsoft Windows funktionieren. Das Muster für Mac OS Netzwerkpfad könnte anders sein als das von Windows und unsere Lösung wird dort nicht funktionieren. Gibt es also eine konkrete Lösung von Microsoft, die auf allen möglichen Betriebssystemen funktioniert? – rrc1709
- 1. Wie konvertiert man in Angular 2 einen lokalen HTML-Speicherdienst in einen indexedDB-Dienst?
- 2. Wie konvertiert man JSON in einen String?
- 3. Wie konvertiert man Bitmap in einen Frame?
- 4. Wie konvertiert man einen Softwareshop in TDD?
- 5. Wie verwende ich einen lokalen PC als dedizierten Server?
- 6. Wie konvertiert man einen String in einen doppelten [,]?
- 7. Wie man einen Java-Stream in einen Scala-Stream konvertiert
- 8. Wie konvertiert man einen InputStream in einen DataHandler?
- 9. Wie konvertiert man folgendes in einen Binärbaum?
- 10. Wie konvertiert man char * in einen String?
- 11. Wie konvertiert man einen String in JavaScript?
- 12. Wie konvertiert man einen String in NSdate?
- 13. Wie konvertiert man einen HttpServletRequest in String?
- 14. Wie konvertiert man FlowDocument in einen String?
- 15. Wie konvertiert man Newtonsoft.Json.Linq.JToken in einen String?
- 16. Wie konvertiert man ArrayList in einen String?
- 17. Wie konvertiert man einen String in JSON?
- 18. Wie konvertiert man MapPartitionsRDD in einen Datenrahmen?
- 19. Wie konvertiert man einen String in CharSequence?
- 20. Wie konvertiert man System.Data.Linq.Binary in einen Stream?
- 21. Wie konvertiert man einen CStringW in LPCWSTR?
- 22. Wie konvertiert man einen Python-Ausdruck in einen Java-Ausdruck?
- 23. Wie konvertiert man einen Python-Datengenerator in einen Tensorflow-Tensor?
- 24. Wie konvertiert man einen Int in einen Float?
- 25. Wie konvertiert man einen BufferedReader einfach in einen String?
- 26. Wie konvertiert man einen String in einen dezimalen Ausdruck?
- 27. Wie konvertiert man einen breiten Zeitreihendatenrahmen in einen langen Datenrahmen?
- 28. Wie konvertiert man einen Datumswert in einen Datumstyp zum Vergleich?
- 29. Wie konvertiert man einen Vektor in einen Datenrahmen?
- 30. Wie ping einen anderen PC im selben lokalen Netzwerk mit ACE?
https://stackoverflow.com/questions/2067075/how-do-i-determine-a-mapped-drives-actual-path –