如果使用FreePascal(或Delphi,如果没有FP示例),给定一个2048字节的缓冲区作为“字节数组”,如何在缓冲区中搜索“StringA”?如何搜索“StringA”的字节数组?
var
Buffer : array[1..2048] of byte;
...
repeat
i := 0;
BlockRead(SrcFile, Buffer, SizeOf(Buffer), NumRead);
// Now I want to search the buffer for "StringA"?
...
三江源
+1宁可在我看来 – 2012-04-04 21:14:15
谢谢再次LURD。这很有效,很容易理解!它确实有效。我唯一的问题(也是另一个问题)是,返回的偏移量值当然是每个缓冲区段的值,并且与原始源文件中找到的位置无关。因此,如果第一次碰撞位于源文件和第一次读取的缓冲区内,则匹配源文件的偏移量。但在此之后,它与缓冲区相关,并且与原始源文件偏移量不相似。我会考虑这一点。再次感谢! – 2012-04-04 21:29:40