2009-04-28 16 views

Respuesta

22

Usando la clase Uri, parece que está funcionando. Convierte cualquier ruta de archivo a la sintaxis `file: /// ..." en el Uri. Maneja cualquier URI como se esperaba, y tiene capacidad para manejar URI relativos. Depende de qué más intente hacer con ese camino

(Actualizado para mostrar el uso de la relación de Uri):.

string fileName = @"c:\temp\myfile.bmp"; 
string relativeFile = @".\woohoo\temp.bmp"; 
string addressName = @"http://www.google.com/blahblah.html"; 

Uri uriFile = new Uri(fileName); 
Uri uriRelative = new Uri(uriFile, relativeFile); 
Uri uriAddress = new Uri(addressName); 

Console.WriteLine(uriFile.ToString()); 
Console.WriteLine(uriRelative.ToString()); 
Console.WriteLine(uriAddress.ToString()); 

me da este resultado:

file:///c:/temp/myfile.bmp 
file:///c:/temp/woohoo/temp.bmp 
http://www.google.com/blahblah.html 
+0

que file: /// cosa es ... un inconveniente, pero Puedo vivir con eso si debo. Realmente estaba esperando algo más directamente configurado para él +1 – BCS

+2

Bueno, puedes inspeccionar el código "LocalPath" operty, que le dará el nombre de archivo en formato local (sin el archivo: ///). –

+0

¡Muy útil! Gracias por la rápida respuesta. –

Cuestiones relacionadas