#c# #python #.net #ironpython
#c# #python #.net #ironpython
Вопрос:
Я пытаюсь скопировать файл, который находится на сервере, и все, что у меня есть, это путь к формату 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 shutiln"
"shutil.copyfile('" from "', '" to "')");
return dateTime.ToString("yy-MM-dd");
}
Я беру все пути из файла конфигурации xml.
Комментарии:
1. Поделитесь, что вы сделали до сих пор .. чтобы мы могли добавить к нему .. вам легко использовать код и хороший момент для нас, чтобы начать..
Ответ №1:
вы можете использовать webclient, а затем получить файл в определенной папке.
using (WebClient wc = new WebClient())
wc.DownloadFile("http://sitec.com/web/myfile.jpg", @"c:imagesxyz.jpg");
или вы также можете использовать: HttpWebRequest
inc если вы просто хотите прочитать содержимое файла с сервера.
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();
Комментарии:
1. Ну, похоже, я обошел его с помощью IP. Сначала я пытался открыть удаленный файл с помощью C #, и это было проблемой в assm, но я не думал об использовании C # для копирования. Я только что перешел на IP. Спасибо — это работает.
Ответ №2:
С помощью Python
import urllib
urllib.urlretrieve("http://www.myserver.com/myfile", "myfile.txt")
При необходимости скопируйте сетевой объект, обозначенный URL, в локальный файл. Если URL указывает на локальный файл или существует допустимая кэшированная копия объекта, объект не копируется.
Комментарии:
1. Я думаю, что все в порядке, но если я смогу избавиться от IP, я это сделаю.