Go Package bytes: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
(6 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
=Internal= | =Internal= | ||
* [[ | * [[Go_Language_Modularization#bytes|Standard Library]] | ||
=<tt>Buffer</tt>= | =<tt>Buffer</tt>= | ||
Line 11: | Line 11: | ||
* https://golang.org/pkg/bytes/#Buffer | * https://golang.org/pkg/bytes/#Buffer | ||
A <tt>Buffer</tt> does not have to be initialized and supports both <tt>[[Go_Package_io#Reader|Reader]]</tt> and <tt>[[Go_Package_io#Writer|Writer]]</tt> interface. | A <tt>Buffer</tt> is a variable-sized buffer of bytes with <tt>Read</tt> and <tt>Write</tt> methods. The zero value for <tt>Buffer</tt> is an empty buffer ready to use. A <tt>Buffer</tt> does not have to be initialized and supports both <tt>[[Go_Package_io#Reader|Reader]]</tt> and <tt>[[Go_Package_io#Writer|Writer]]</tt> interface. | ||
Conversion of a <tt>Buffer</tt> into a <tt>[]byte</tt>: | Conversion of a <tt>Buffer</tt> into a <tt>[]byte</tt>: | ||
Line 17: | Line 17: | ||
<pre> | <pre> | ||
var buffer bytes.Buffer | var buffer bytes.Buffer | ||
bytes := buffer.Bytes | bytes := buffer.Bytes() | ||
</pre> | </pre> | ||
<font color=darkkhaki>Why would I use an bytes.Buffer and not a byte slice?</font> | |||
=Wrapping a <tt>byte[]</tt> into a <tt>Reader</tt>= | |||
{{Internal|Go_Package_io#WBSR|Wrapping a <tt>[]byte</tt> into a <tt>Reader</tt>}} |
Latest revision as of 18:17, 5 January 2024
External
Internal
Buffer
A Buffer is a variable-sized buffer of bytes with Read and Write methods. The zero value for Buffer is an empty buffer ready to use. A Buffer does not have to be initialized and supports both Reader and Writer interface.
Conversion of a Buffer into a []byte:
var buffer bytes.Buffer bytes := buffer.Bytes()
Why would I use an bytes.Buffer and not a byte slice?