Skip to content

class MultipartReaderStream

cangjie
public class MultipartReaderStream <: InputStream & Seekable

功能:表示边界感知的 multipart 分段流。

读取到分段边界时会自动停止,对应 ASP.NET Core 的 MultipartReaderStream。

父类型:

  • InputStream
  • Seekable

成员概览

成员功能
init(BufferedReadStream, MultipartBoundary)创建 multipart 分段流实例。
var lengthLimit获取或修改分段长度限制。
prop finalBoundaryFound检查是否检测到最终边界。
prop length返回当前已观测到的分段长度。
prop position返回当前读取位置。
prop remainLength返回当前剩余可读长度。
func seek(SeekPosition)调整当前分段流位置。
func read(Array<Byte>)从当前分段读取数据。

init(BufferedReadStream, MultipartBoundary)

cangjie
public init(stream: BufferedReadStream, boundary: MultipartBoundary)

功能:创建 multipart 分段流实例。

参数:

var lengthLimit

cangjie
public var lengthLimit: ?Int64 = None

功能:获取或修改分段长度限制。

类型:?Int64

prop finalBoundaryFound

cangjie
public prop finalBoundaryFound: Bool

功能:检查是否检测到最终边界。

类型:Bool

prop length

cangjie
public prop length: Int64

功能:返回当前已观测到的分段长度。

类型:Int64

prop position

cangjie
public prop position: Int64

功能:返回当前读取位置。

类型:Int64

prop remainLength

cangjie
public prop remainLength: Int64

功能:返回当前剩余可读长度。

类型:Int64

func seek(SeekPosition)

cangjie
public func seek(pos: SeekPosition): Int64

功能:调整当前分段流位置。

参数:

  • pos: SeekPosition - 目标位置描述。

返回值:

  • Int64 - 调整后的分段内位置。

异常:

  • IOException - 当目标位置非法时抛出。

func read(Array<Byte>)

cangjie
public func read(buffer: Array<Byte>): Int64

功能:从当前分段读取数据。

参数:

  • buffer: Array<Byte> - 用于接收数据的缓冲区。

返回值:

  • Int64 - 实际读取的字节数。

异常:

  • IOException - 当流意外结束或超出长度限制时抛出。