Why a cast to u16?

Also, personal thing, but I think std streams are completely unreadable. What about a string and += StringFromFormat("%02x", ...) ?