func (f *ASCII) WriteString(num int, val string) {
	f.buffer.WriteString(f.String(num, val))
}
WriteString appends string data to the buffer.
package format
import (
	"bytes"
	"fmt"
	"io"
)
type ASCII struct {
	buffer bytes.Buffer
	float  string
}
func NewASCII() *ASCII {
	var b bytes.Buffer
	return &ASCII{
		buffer: b,
		float:  "%.6f",
	}
}
func (f *ASCII) Reset() {
	f.buffer.Reset()
}
func (f *ASCII) WriteTo(w io.Writer) (int64, error) {
	return f.buffer.WriteTo(w)
}
func (f *ASCII) SetPrecision(p int) {
	f.float = fmt.Sprintf("%%.%df", p)
}
func (f *ASCII) Output() string {
	rtn := f.buffer.String()
	f.buffer.Reset()
	return rtn
}
func (f *ASCII) String(num int, val string) string {
	return fmt.Sprintf("%d\n%s\n", num, val)
}
func (f *ASCII) Hex(num int, h int) string {
	return fmt.Sprintf("%d\n%X\n", num, h)
}
func (f *ASCII) Int(num int, val int) string {
	return fmt.Sprintf("%d\n%d\n", num, val)
}
func (f *ASCII) Float(num int, val float64) string {
	return fmt.Sprintf(fmt.Sprintf("%d\n%s\n", num, f.float), val)
}