Sdílet prostřednictvím


FtpWebRequest.ContentOffset Vlastnost

Definice

Získá nebo nastaví posun bajtu do souboru staženého tímto požadavkem.

public:
 property long ContentOffset { long get(); void set(long value); };
public long ContentOffset { get; set; }
member this.ContentOffset : int64 with get, set
Public Property ContentOffset As Long

Hodnota vlastnosti

Instance Int64 , která určuje posun souboru v bajtech. Výchozí hodnota je nula.

Výjimky

Pro tuto vlastnost byla zadána nová hodnota pro požadavek, který již probíhá.

Hodnota zadaná pro tuto vlastnost je menší než nula.

Příklady

Následující příklad kódu ukazuje stažení části souboru ze serveru a připojení stažených dat do místního souboru.

public static bool RestartDownloadFromServer(string fileName, Uri serverUri, long offset)
{
    // The serverUri parameter should use the ftp:// scheme.
    // It identifies the server file that is to be downloaded
    // Example: ftp://contoso.com/someFile.txt.

    // The fileName parameter identifies the local file.
    //The serverUri parameter identifies the remote file.
    // The offset parameter specifies where in the server file to start reading data.

    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
    request.Method = WebRequestMethods.Ftp.DownloadFile;
    request.ContentOffset = offset;
    FtpWebResponse response = null;
    try
    {
        response = (FtpWebResponse) request.GetResponse();
    }
    catch (WebException e)
    {
        Console.WriteLine (e.Status);
        Console.WriteLine (e.Message);
        return false;
    }
    // Get the data stream from the response.
    Stream newFile = response.GetResponseStream();
    // Use a StreamReader to simplify reading the response data.
    StreamReader reader  = new StreamReader(newFile);
    string newFileData = reader.ReadToEnd();
    // Append the response data to the local file
    // using a StreamWriter.
    StreamWriter writer = File.AppendText(fileName);
    writer.Write(newFileData);
    // Display the status description.

    // Cleanup.
    writer.Close();
    reader.Close();
    response.Close();
    Console.WriteLine("Download restart - status: {0}",response.StatusDescription);
    return true;
}

Poznámky

ContentOffset Nastavte vlastnost při stahování souboru ze serveru FTP. Tento posun označuje pozici v souboru serveru, který označuje začátek dat, která se mají stáhnout. Posun je určen jako počet bajtů od začátku souboru; posun prvního bajtu je nula.

Nastavení ContentOffset způsobí, že FtpWebRequest se na server odešle příkaz restartu (REST). Tento příkaz je ignorován většinou implementací serveru FTP, pokud nahráváte data na server.

Změna ContentOffset po volání metod GetRequestStream, BeginGetRequestStream, GetResponse, nebo BeginGetResponse vyvolá výjimku InvalidOperationException.

Platí pro

Viz také