OracleBFile.Seek(Int64, SeekOrigin) Methode

Definitie

Hiermee stelt u de positie op de huidige OracleBFile stroom in.

public:
 override long Seek(long offset, System::IO::SeekOrigin origin);
public override long Seek(long offset, System.IO.SeekOrigin origin);
override this.Seek : int64 * System.IO.SeekOrigin -> int64
Public Overrides Function Seek (offset As Long, origin As SeekOrigin) As Long

Parameters

offset
Int64

Een byte-offset ten opzichte van de oorsprong. Als offset dit een negatief getal is, wordt de nieuwe positie voorafgegaan origin door het aantal bytes dat is opgegeven door offset. Als offset dit nul is, is de nieuwe positie de positie die is opgegeven door origin. Als offset dit positief is, volgt de nieuwe positie de positie die is opgegeven door origin het aantal bytes dat is opgegeven door offset.

origin
SeekOrigin

Een waarde van het type System.IO.SeekOrigin dat het referentiepunt aangeeft dat wordt gebruikt om de nieuwe positie te verkrijgen.

Retouren

De nieuwe positie binnen de huidige stroom.

Uitzonderingen

Er is geprobeerd een positie in te stellen met een negatieve waarde of groter dan de lengte van de stroom.

Methoden werden aangeroepen nadat de stream is gesloten of verwijderd.

Opmerkingen

Als offset dit negatief is, moet de nieuwe positie voorafgaan aan de positie die is opgegeven door origin het aantal bytes dat is opgegeven door offset. Als offset nul is, moet de nieuwe positie de positie zijn die is opgegeven door origin. Als offset dit positief is, is de nieuwe positie vereist om de positie te volgen die is opgegeven door origin het aantal bytes dat is opgegeven door offset.

Het zoeken naar een locatie buiten de lengte van de stream wordt niet ondersteund.

Elke poging om een gesloten OracleBFile toegang te krijgen met behulp van de Read of Seek methoden, opent automatisch een OracleBFile stream opnieuw.

In het volgende C#-voorbeeld wordt uitgegaan van dit schema in een Oracle-tabel:

(col1 number, col2 BFILE)

In het voorbeeld ziet u hoe u de Read en Seek methoden gebruikt om toegang te krijgen tot een OracleBFile object.

byte[] buffer = new byte[100];
OracleDataReader dataReader = command.ExecuteReader();
using (dataReader) {
    if (dataReader.Read()) {
            OracleBFile BFile = dataReader.GetOracleBFile(1);
        using (BFile) {
            BFile.Seek(0, SeekOrigin.Begin);
            BFile.Read(buffer, 0, 100);
        }
    }
}

Van toepassing op