Io 拍位

Io 拍位,io,scheme,racket,Io,Scheme,Racket,我想知道Racket中是否有东西可以操纵输入端口中的文件位置。 我的情况是,我需要使类似文件指针的东西返回到一个位置,以防我读到我不应该读的东西 e、 g。 文件test.txt中的“我很困惑”。 然后,文件指针在之前被混淆。(我猜) 所以,有什么方法可以让我下次读字符串时,得到的是“am”,而不是“.”?举个例子。它与读取字符串相同,只是返回的字符保留在端口中以供将来读取。例如。它与读取字符串相同,只是返回的字符保留在端口中以供将来读取。为了完成,有一个函数可以检索当前位置或更改它。但是您通常

我想知道Racket中是否有东西可以操纵输入端口中的文件位置。 我的情况是,我需要使类似文件指针的东西返回到一个位置,以防我读到我不应该读的东西

e、 g。 文件test.txt中的“我很困惑”。 然后,文件指针在之前被混淆。(我猜)
所以,有什么方法可以让我下次读字符串时,得到的是“am”,而不是“.”?

举个例子。它与
读取字符串
相同,只是返回的字符保留在端口中以供将来读取。

例如。它与
读取字符串
相同,只是返回的字符保留在端口中以供将来读取。

为了完成,有一个函数可以检索当前位置或更改它。但是您通常应该避免它,因为它使代码只在您可以实际更改位置的端口上工作——这并不总是正确的。正如Yasir指出的,对于所有的读取函数,通常都有一个“peek”版本,可以在不移动位置的情况下读取某些内容,这是一个更好的解决方案。

为了完成,有一个函数可以检索或更改当前位置。但是您通常应该避免它,因为它使代码只在您可以实际更改位置的端口上工作——这并不总是正确的。正如Yasir所指出的,对于所有的阅读功能,通常都有一个“窥视”版本,可以在不移动位置的情况下阅读某些内容,这是一个更好的解决方案。

@jenny如果一个答案对你有帮助,你就“接受”它,这是向Yasir表示感谢的更好方式。@jenny如果一个答案对你有帮助,你就“接受”它,这是向亚西尔表示感谢的更好方式。