我的應用程序接受來自用戶的上傳文件並對其進行解析,使用seek和rewind方法來分析文件中的塊(行可以以'開始「或」結束「來包圍一段數據等)。使用seek,rewind,解析字符串像CSV文件
新的要求允許用戶上傳加密文件。我已經實現了對文件內容的解密並將內容字符串返回給現有的方法。我可以將字符串解析爲CSV,但會丟失文件控件。
由於商業原因,存儲未加密的文件版本不是一個選項。
我正在使用FasterCSV,但如果我可以保持seek/rewind行爲,則不會厭惡使用其他東西。
當前代碼:
FasterCSV.open(path, 'rb') do |csv| # Can I open a string as if it were a file?
unless csv.eof? # Catch empty files
# Read, store position, seek, rewind all used during parsing
position = csv.pos
row = csv.readline
csv.seek(pos)