将文件从 URI 格式路径复制到本地路径
Copy file from URI format path to local path
我正在尝试复制服务器上的文件,但我得到的只是它的 URI 格式路径。
我一直在尝试在 C# .NET 4.5 中实现复制,但 CopyFile 似乎不适合处理 URI 格式。
所以我将 IronPython 与 shutil 一起使用,但似乎它也不适合 URI 格式路径。
如何在本地获取该文件?
private string CopyFile(string from, string to, string pythonLibDir, string date)
{
var dateTime = DateTime.Today;
if (dateTime.ToString("yy-MM-dd") == date)
{
return "";
}
var pyEngine = Python.CreateEngine();
var paths = pyEngine.GetSearchPaths();
paths.Add(pythonLibDir);
pyEngine.SetSearchPaths(paths);
pyEngine.Execute("import shutil\n" +
"shutil.copyfile('" + from + "', '" + to + "')");
return dateTime.ToString("yy-MM-dd");
}
我从 xml 配置文件中获取所有路径。
您可以使用网络客户端,然后获取特定文件夹中的文件。
using (WebClient wc = new WebClient())
wc.DownloadFile("http://sitec.com/web/myfile.jpg", @"c:\images\xyz.jpg");
或者您也可以使用:HttpWebRequest
如果您只想从服务器读取文件内容。
var http = (HttpWebRequest)WebRequest.Create("http://sitetocheck.com");
var response = http.GetResponse();
var stream = response.GetResponseStream();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
和Python
import urllib
urllib.urlretrieve("http://www.myserver.com/myfile", "myfile.txt")
Copy a network object denoted by a URL to a local file, if necessary. If the URL points to a local file, or a valid cached copy of the object exists, the object is not copied.
我正在尝试复制服务器上的文件,但我得到的只是它的 URI 格式路径。
我一直在尝试在 C# .NET 4.5 中实现复制,但 CopyFile 似乎不适合处理 URI 格式。
所以我将 IronPython 与 shutil 一起使用,但似乎它也不适合 URI 格式路径。
如何在本地获取该文件?
private string CopyFile(string from, string to, string pythonLibDir, string date)
{
var dateTime = DateTime.Today;
if (dateTime.ToString("yy-MM-dd") == date)
{
return "";
}
var pyEngine = Python.CreateEngine();
var paths = pyEngine.GetSearchPaths();
paths.Add(pythonLibDir);
pyEngine.SetSearchPaths(paths);
pyEngine.Execute("import shutil\n" +
"shutil.copyfile('" + from + "', '" + to + "')");
return dateTime.ToString("yy-MM-dd");
}
我从 xml 配置文件中获取所有路径。
您可以使用网络客户端,然后获取特定文件夹中的文件。
using (WebClient wc = new WebClient())
wc.DownloadFile("http://sitec.com/web/myfile.jpg", @"c:\images\xyz.jpg");
或者您也可以使用:HttpWebRequest
如果您只想从服务器读取文件内容。
var http = (HttpWebRequest)WebRequest.Create("http://sitetocheck.com");
var response = http.GetResponse();
var stream = response.GetResponseStream();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
和Python
import urllib
urllib.urlretrieve("http://www.myserver.com/myfile", "myfile.txt")
Copy a network object denoted by a URL to a local file, if necessary. If the URL points to a local file, or a valid cached copy of the object exists, the object is not copied.