OracleBFile.Seek(Int64, SeekOrigin) Metod

Definition

Anger positionen på den aktuella OracleBFile strömmen.

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

Parametrar

offset
Int64

En byteförskjutning i förhållande till ursprunget. Om offset är negativt kommer den nya positionen att föregå den position som anges av origin antalet byte som anges av offset. Om offset är noll är den nya positionen den position som anges av origin. Om offset är positivt följer den nya positionen den position som anges av origin antalet byte som anges av offset.

origin
SeekOrigin

Ett värde av typen System.IO.SeekOrigin som anger referenspunkten som används för att hämta den nya positionen.

Returer

Den nya positionen i den aktuella strömmen.

Undantag

Försökte ange en position med ett negativt värde eller större än strömmens längd.

Metoder anropades efter att strömmen stängdes eller togs bort.

Kommentarer

Om offset är negativt krävs den nya positionen för att föregå den position som anges av origin antalet byte som anges av offset. Om offset är noll måste den nya positionen vara den position som anges av origin. Om offset är positivt krävs den nya positionen för att följa den position som anges av origin antalet byte som anges av offset.

Det går inte att söka till någon plats utöver dataströmmens längd.

Alla försök att komma åt en stängd OracleBFile med hjälp av Read metoderna eller Seek öppnar en OracleBFile dataström automatiskt.

Följande C#-exempel förutsätter att det här schemat finns i en Oracle-tabell:

(col1 number, col2 BFILE)

Exemplet visar hur du använder Read metoderna och Seek för att komma åt ett OracleBFile objekt.

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);
        }
    }
}

Gäller för