Functions.FReadLine 方法 |
命名空间: XSharp.Core
提示: |
---|
X# 运行时中的低级文件 IO 函数在后台使用 .Net 文件流。 这意味着 FOpen() 和 FCreate() 返回的文件句柄不是'正常'的文件句柄,而是用于在运行时的流集合中找到底层流对象的唯一标识符。 这也意味着你不能使用 FRead() 和 FWrite() 这样的函数,这些函数不是在 X# 运行时中创建的文件句柄。 如果你想访问底层的 FileStream,你应该调用函数 FGetStream(IntPtr) |
1ptrHandle := FOpen2("docs.txt", FO_READ) 2IF ptrHandle != F_ERROR 3 DO WHILE !FEOF(ptrHandle) 4 ? FReadLine(ptrHandle) 5 ENDDO 6ENDIF 7FClose(ptrHandle)
1FUNCTION Grep(cSearch, cFile AS STRING) ; 2 AS DWORD PASCAL 3 LOCAL handle AS PTR 4 LOCAL Count AS DWORD 5 LOCAL Line AS STRING 6 Line := " " 7 handle := FOpen2(file, FO_READ) 8 cSearch := Upper(cSearch) 9 DO WHILE !FEOF(handle) 10 line := Upper(FReadLine(handle)) 11 IF InStr(cSearch, line) 12 ? line 13 Count += 1 14 ENDIF 15 ENDDO 16 RETURN Count