2015-04-23 5 views
1

У меня есть следующий код, мне нужно загрузить несколько файлов, которые не имеют назначенного им расширения/типа. Следующий ниже код работает, но не на эти файлы, как это пытается сделать файл, например под названием: ftp.server/fileC# Загрузить файл без расширения

Вот мой код:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.IO; 
using System.Net; 
using System.Threading.Tasks; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      String sourcefilepath = @"path"; // e.g. “d:/test.docx” 
      String ftpurl = @"ftp"; // e.g. ftp://serverip/foldername/foldername 
      String ftpusername = @"user"; // e.g. username 
      String ftppassword = @"pass"; // e.g. password 

      string[] filePaths = Directory.GetFiles(sourcefilepath); 

      // Get the object used to communicate with the server. 
      foreach (string filename in filePaths) 
      { 
       FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpurl + Path.GetFileName(filename)); 
       request.Method = WebRequestMethods.Ftp.UploadFile; 

       // This example assumes the FTP site uses anonymous logon. 
       request.Credentials = new NetworkCredential(ftpusername, ftppassword); 

       // Copy the contents of the file to the request stream. 
       StreamReader sourceStream = new StreamReader(sourcefilepath); 
       byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd()); 
       sourceStream.Close(); 
       request.ContentLength = fileContents.Length; 

       Stream requestStream = request.GetRequestStream(); 
       requestStream.Write(fileContents, 0, fileContents.Length); 
       requestStream.Close(); 

       FtpWebResponse response = (FtpWebResponse)request.GetResponse(); 

       Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription); 

       response.Close(); 
      } 
     } 
    } 
} 

Файлы из резервной копии iPhone, iPhone резервного копирования Дона Не предоставляйте расширения файлов, поэтому мне нужна работа.

+0

Почему бы просто не дать файл фиктивный расширения, как '.dummy' –

+1

Кроме того, вы, вероятно, не следует размещать свой FTP-адрес, имя пользователя и пароль для SO –

+1

Я хотел бы также изменить их, а только в случае –

ответ

0

Решение, которое я нашел, это скопировать файлы и добавить фиктивное расширение.

Смежные вопросы