You should send them out piecemeal, and receive them the same way. The concept of the array is not what you are exposing; and it is a weak metaphor - quite limiting. Strings are the same way. They are convenient inside the program, but a bit laborious to ferry in and out.
At some point, it will become an increasingly good idea to reduce it to what it is: an exchange of binary information with no regard to its actual use, just to get it transferred without any ill side-effects. It is really as simple as dealing with each field as a sequence of bytes.
If you want to post up a snippet of what you want to do, I will write you an input and output to a file. That is how you would do it anyway. Also, I could show you how to insert it and extract it to/from a flat buffer, which is pretty generic, and useful.