0

プログラムをロードするときに、ファイル内のバイトが特定のものに設定されているかどうかを確認できるようにしたいと考えています。それらが特定のバイトに設定されている場合は、コードを実行します。

だから私はそれを特定のバイトに移動させ、それが特定のバイトであるかどうかを確認し、それがその特定のバイトである場合はコードを実行し、それが他のものである場合は他のコードを実行できるようにしたい.

私はこれを試しました:

    Dim bytes As Byte() = New Byte(writeStream.Length) {}
    Dim ByteResult As Integer = writeStream.Read(bytes, 30, 1)

    MsgBox(ByteResult)

しかし、何らかの理由で常に 1 が返されるため、機能しませんでした。

私もこれを試しました:

        Dim dataArray(60) As Byte

    If dataArray(30) <> writeStream.ReadByte() - 0 Then
        MsgBox("The bytes have been checked.")
    End If

しかし、メッセージボックスが開かなかったので、それもうまくいかなかったようです。

たとえば、オフセット 30 をシークし、バイトが 00 かどうかを確認してからコード 1 を実行し、01 の場合はコード 2 を実行します。

ありがとう。

4

2 に答える 2

0

次のコードが機能することがわかりました。

        fLocation = ("file.txt")

        Dim writeStream As New FileStream(fLocation, FileMode.Open)
        Dim writeBinary As New BinaryWriter(writeStream)

        writeStream.Seek(30, SeekOrigin.Begin)
        Dim ByteResult = writeStream.ReadByte()

        MsgBox(ByteResult)
于 2013-06-25T08:07:28.257 に答える
0

これを行うこともできます

    Dim FileStream1 As New IO.FileStream("File.txt", IO.FileMode.Open)

    FileStream1.Position = 30
    MsgBox(FileStream1.ReadByte)

    FileStream1.Close()
    FileStream1.Dispose()
于 2013-06-25T08:15:20.320 に答える