问题
I need a Cocoa class that can read and write from a memory stream and that supports seeking. In C#, MemoryStream
supports the method seek
, and in Java, ByteArrayInputStream
supports the methods mark
, skip
, and reset
.
In iOS development, what are the equivalent class and method?
I need the above functionality for my project, and if it is by default not supported by the iOS frameworks, what would be the best way of going about implementing my own? E.g. write my own stream subclass inheriting from NSInputStream
/NSOutputStream
which will internally contain custom code?
回答1:
An arbitrary NSInputStream
and NSOutputStream
don't appear to support random offset seeking, and creating subclasses of them is notoriously difficult.
If you're going to be doing this reading and writing to a local file on disk (which I think you'd have to be, since I'm not sure how you could seek to a random offset on a network connection...), then what you're probably looking for is NSFileHandle.
来源:https://stackoverflow.com/questions/7019772/do-the-stream-classes-in-cocoa-support-seeking