簡體   English   中英

對NSInputStream進行子類化以從本地文件路徑上載特定部分的數據

[英]Subclassing NSInputStream to upload a particular portion of data from a local filepath

我在一個文件中有100 MB的數據。 這個100 MB的數據將被虛擬划分。 即,我需要創建一個指向不同5MB塊的NSInputStream。 這可以通過使用NSData創建流來實現。

但我想知道我是否可以擁有指向文件中一系列數據的NSInputStream?

如果要通過將NSInputStream實例傳遞給NSURLRequest.HTTPBodyStream來上載文件,則必須創建NSInputStream的子類,並僅傳輸要上載的字節。 在這里不能使用NSFileHandle

創建一個與NSURLRequest一起使用的NSInputStream的子類是非常棘手的,但幸運的是這里有一篇關於如何實現它的博客文章

在這里,您可以為此找到NSInputStream的現成可用子類

您可以使用另一個讀取文件的NSInputStream來提供ChunkInputStream ,並傳遞開始位置和要讀取的字節數。

Swift示例:

let fileInputStream = NSInputStream(fileAtPath: "/tmp/readme")
let inputStream = ChunkInputStream(inputStream: fileInputStream)
inputStream.startPosition = 2097152
inputStream.readMax = 1048576

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM