SeekOrigin Перечисление

Определение

Задает позицию в потоке, используемую для поиска.Specifies the position in a stream to use for seeking.

public enum class SeekOrigin
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum SeekOrigin
type SeekOrigin = 
Public Enum SeekOrigin
Наследование
SeekOrigin
Атрибуты

Поля

Begin 0

Задает начало потока.Specifies the beginning of a stream.

Current 1

Задает текущее положение в потоке.Specifies the current position within a stream.

End 2

Задает конец потока.Specifies the end of a stream.

Примеры

В следующем примере показано, как выполнять чтение в обратном направлении, начиная с конца потока, и как считывать данные из указанной точки в потоке.The following example shows how to read backwards starting at the end of the stream, and how to read from a specified point in the stream.

using System;
using System.IO;

public class FSSeek
{
    public static void Main()
    {
        long offset;
        int nextByte;

        // alphabet.txt contains "abcdefghijklmnopqrstuvwxyz"
        using (FileStream fs = new FileStream(@"c:\temp\alphabet.txt", FileMode.Open, FileAccess.Read))
        {
            for (offset = 1; offset <= fs.Length; offset++)
            {
                fs.Seek(-offset, SeekOrigin.End);
                Console.Write(Convert.ToChar(fs.ReadByte()));
            }
            Console.WriteLine();

            fs.Seek(20, SeekOrigin.Begin);

            while ((nextByte = fs.ReadByte()) > 0)
            {
                Console.Write(Convert.ToChar(nextByte));
            }
            Console.WriteLine();
        }
    }
}
// This code example displays the following output:
//
// zyxwvutsrqponmlkjihgfedcba
// uvwxyz
Imports System.IO

Public Class FSSeek
    Public Shared Sub Main()
        Dim offset As Long
        Dim nextByte As Integer

        ' alphabet.txt contains "abcdefghijklmnopqrstuvwxyz"
        Using fs As New FileStream("c:\temp\alphabet.txt", FileMode.Open, FileAccess.Read)

            For offset = 1 To fs.Length
                fs.Seek(-offset, SeekOrigin.End)
                Console.Write(Convert.ToChar(fs.ReadByte()))
            Next offset
            Console.WriteLine()

            fs.Seek(20, SeekOrigin.Begin)

            nextByte = fs.ReadByte()
            While (nextByte > 0)
                Console.Write(Convert.ToChar(nextByte))
                nextByte = fs.ReadByte()
            End While
            Console.WriteLine()

        End Using
    End Sub
End Class

' This code example displays the following output:
'
' zyxwvutsrqponmlkjihgfedcba
' uvwxyz

Комментарии

SeekOriginSeek используется методамиFileStream, ,BufferedStream, ,иBinaryWriterдругими классами. MemoryStream StreamSeekOrigin is used by the Seek methods of Stream, BufferedStream, FileStream, MemoryStream, BinaryWriter, and other classes. Методы принимают параметр offset относительно позиции, заданной параметром SeekOrigin. SeekThe Seek methods take an offset parameter that is relative to the position specified by SeekOrigin.

Применяется к

Дополнительно