seek
位於 base
包(package)。 說明
重新定位連接的函數。
用法
seek(con, ...)
## S3 method for class 'connection'
seek(con, where = NA, origin = "start", rw = "", ...)
isSeekable(con)
truncate(con, ...)
參數
con |
|
where |
數字。文件位置(相對於 |
rw |
字符串。空或 |
origin |
字符串。 |
... |
傳入或傳出其他方法的進一步參數。 |
細節
seek
和 where = NA
返回連接的當前字節偏移量(從頭開始),並且使用非缺失的 where
參數,連接將重新定位(如果可能)到指定位置。 isSeekable
返回連接原則上是否支持 seek
:當前僅(可能是 gz-compressed)文件連接支持。
where
存儲為實數,但應表示整數:非整數值可能會被截斷。請注意,可能的值可能超過最大可表示數R
integer
在 64 位版本和某些 32 位版本上。
文件連接可以打開以進行寫入/追加,在這種情況下R保持不同的閱讀和寫作位置。哪個seek
指的是可以通過其設置rw
參數:默認值是最後使用的模式(讀取或寫入)。大多數文件僅打開用於讀取或寫入,因此默認為該狀態。如果一個文件以讀寫方式打開但尚未使用,則默認為讀取位置 (0)。
讀取的初始文件位置始終位於開頭。對於 "r+"
和 "r+b"
模式,寫入的初始位置位於文件的開頭,否則位於文件的末尾。某些平台僅允許在追加模式下在文件末尾寫入。 (以追加模式打開的文件的報告寫入位置通常不可靠,直到文件被寫入為止。)
gzfile
連接支持 seek
,但有許多限製,使用未壓縮文件的文件位置。他們不支持origin = "end"
。寫入時,隻能向前查找:讀取時,通過倒帶文件並從頭開始重新讀取來支持向後查找。
如果使用 where
的非 NA
值調用 seek
,則文本模式連接上的任何推送都會被丟棄。
truncate
截斷在當前位置打開以進行寫入的文件。它僅適用於 file
連接,並且並未在所有平台上實現:在其他平台(包括 Windows)上,它不適用於大型(> 2Gb)文件。
這些都不應該在選擇重新編碼的文本模式連接上工作。
值
seek
返回當前位置(在任何移動之前),作為距原點的(數字)字節偏移量(如果相關),或者0
如果不。請注意,該位置可能超過一個中的最大可表示數字R integer
在 64 位版本和某些 32 位版本上。
truncate
返回 NULL
:如果失敗(或未實現),它將停止並出現錯誤。
isSeekable
返回一個邏輯值,連接是否支持 seek
。
警告
用於seek
在 Windows 上不鼓勵這樣做。我們在 Windows 實現文件定位中發現了如此多的錯誤,建議用戶自行承擔風險,並要求用戶不要浪費時間R開發人員花時間處理有關 Windows 缺陷的錯誤報告。
也可以看看
相關用法
- R seq.Date 生成規則的日期序列
- R search 給出 R 對象的搜索路徑
- R sequence 創建序列向量
- R serialize 簡單的序列化接口
- R setTimeLimit 設置 CPU 和/或運行時間限製
- R seq 序列生成
- R seq.POSIXt 生成規則的時間序列
- R sets 設置操作
- R strsplit 分割字符向量的元素
- R solve 求解方程組
- R scan 讀取數據值
- R sprintf 使用 C 風格字符串格式化命令
- R stop 停止函數執行
- R sign 標誌函數
- R svd 矩陣的奇異值分解
- R strtoi 將字符串轉換為整數
- R source 從文件、連接或表達式中讀取 R 代碼
- R sQuote 引用文字
- R switch 選擇替代方案列表之一
- R substitute 替換和引用表達式
- R strrep 重複字符向量的元素
- R split 分組並重新集合
- R slice.index 數組中的切片索引
- R sort 對向量進行排序或排序
- R standardGeneric 形式化方法係統 – 調度 S4 方法
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Functions to Reposition Connections。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。