用法一
IOBuffer([data::AbstractVector{UInt8}]; keywords...) -> IOBuffer
创建一个内存 I/O 流,它可以选择性地对预先存在的数组进行操作。
它可能需要可选的关键字参数:
read
,write
,append
:限制对缓冲区的操作;有关详细信息,请参阅open
。truncate
:将缓冲区大小截断为零长度。maxsize
:指定缓冲区不能增长的大小。sizehint
:建议缓冲区的容量(data
必须实现sizehint!(data, size)
)。
如果没有给出data
,则默认情况下缓冲区是可读可写的。
例子
julia> io = IOBuffer();
julia> write(io, "JuliaLang is a GitHub organization.", " It has many members.")
56
julia> String(take!(io))
"JuliaLang is a GitHub organization. It has many members."
julia> io = IOBuffer(b"JuliaLang is a GitHub organization.")
IOBuffer(data=UInt8[...], readable=true, writable=false, seekable=true, append=false, size=35, maxsize=Inf, ptr=1, mark=-1)
julia> read(io, String)
"JuliaLang is a GitHub organization."
julia> write(io, "This isn't writable.")
ERROR: ArgumentError: ensureroom failed, IOBuffer is not writeable
julia> io = IOBuffer(UInt8[], read=true, write=true, maxsize=34)
IOBuffer(data=UInt8[...], readable=true, writable=true, seekable=true, append=false, size=0, maxsize=34, ptr=1, mark=-1)
julia> write(io, "JuliaLang is a GitHub organization.")
34
julia> String(take!(io))
"JuliaLang is a GitHub organization"
julia> length(read(IOBuffer(b"data", read=true, truncate=false)))
4
julia> length(read(IOBuffer(b"data", read=true, truncate=true)))
0
用法二
IOBuffer(string::String)
在给定字符串基础的数据上创建只读IOBuffer
。
例子
julia> io = IOBuffer("Haho");
julia> String(take!(io))
"Haho"
julia> String(take!(io))
"Haho"
相关用法
- Julia IOContext方法用法及代码示例
- Julia Iterators.partition用法及代码示例
- Julia Iterators.rest用法及代码示例
- Julia Iterators.enumerate用法及代码示例
- Julia Iterators.zip用法及代码示例
- Julia IteratorsMD.CartesianIndex用法及代码示例
- Julia Iterators.filter用法及代码示例
- Julia Iterators.drop用法及代码示例
- Julia Iterators.countfrom用法及代码示例
- Julia Iterators.Stateful用法及代码示例
- Julia Iterators.product用法及代码示例
- Julia Iterators.accumulate用法及代码示例
- Julia InteractiveUtils.supertypes用法及代码示例
- Julia IdDict用法及代码示例
- Julia Iterators.map用法及代码示例
- Julia InteractiveUtils.subtypes用法及代码示例
- Julia Iterators.dropwhile用法及代码示例
- Julia IteratorsMD.CartesianIndices用法及代码示例
- Julia Iterators.peel用法及代码示例
- Julia Inf用法及代码示例
- Julia Iterators.reverse用法及代码示例
- Julia Iterators.repeated用法及代码示例
- Julia Iterators.takewhile用法及代码示例
- Julia Iterators.cycle用法及代码示例
- Julia Iterators.take用法及代码示例
注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 Base.IOBuffer — Type。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。