Create FileStream.md

This commit is contained in:
Ihar Katkavets
2023-08-26 14:09:04 +02:00
committed by GitHub
parent 09481d95db
commit 80be740493
+22
View File
@@ -0,0 +1,22 @@
# File Input Stream
`FileInputStream` is used for reading data from a file. It can be added to a ciphers chain
```swift
let inputFileStream = FileInputStream(with: try! FileHandle(forReadingFrom: originalFileURL))
try inputFileStream.open()
```
```swift
guard let inputFileStream = FileInputStream(with: originalFileURL) else {
// file not exist
return
}
try inputFileStream.open()
```
```swift
let tmpBufferLen = 1<<16 // 65KB buffer
var tmpBuffer = Array<UInt8>(repeating: 0, count: tmpBufferLen)
while inputFileStream.hasBytesAvailable {
let readLen = inputFileStream.read(&tmpBuffer, maxLength: tmpBufferLen)
try compressingStream.write(tmpBuffer, length: readLen)
}
```