1
我正在嘗試創建一個讀取文件並搜索特定字符組合的程序。 例如:「/ start/4jy42jygsfsf/end /」。在文件中搜索字符的組合
所以我想找到所有以/開始/結尾爲/結尾/開頭的「字符串」。
爲了做到這一點,我使用read()函數,因爲該文件可能是一個二進制文件(它不一定是帶有字符的文件)。
我調用read()函數這樣的:
#define BUFFSIZE 4000
// more declarations
while (read(file_descriptor, buffer, BUFFSIZE) > 0)
{
//search for /start/
//then search for /end/
//build a string with all the chars between these two
//keep searching till you reach the end of buffer
}
假設每/啓動/後跟一個/結束/。
的問題是:
如何處理案件的字符的組合在半切?
例如,假設在第一時間閱讀()被調用,在這個緩衝結束時,我發現/明星和閱讀下一時間()被調用在第二個緩衝的開始有t/4jy42jygsfsf/end/。
這種組合可能會在任何地方被切斷。我認爲的解決方案將導致許多許多代碼行。有沒有什麼聰明的方法來處理所有這些情況?