Text is stored plainly it I recall, so overwriting it with any old hex editor should do the job as long as you stay within the space limitations for each message. Anything more advanced than that would require finding a pointer table if one exists and editing it to accompany the new lengths and offsets. Even that probably wouldn't be too involved with a bit of patience.
If memory serves, DKC2 and DKC3 mark the end of a message by setting the high bit in the final character. DKC probably does it the same way, so watch out for that.
The high bit would suggest that the games use a delimiter approach for entire blocks rather than pointers to each individual message, but I'd imagine that would be considerably more expensive for the CPU to decode. Then again, text isn't ever decoded in places that would require a lot of CPU time anyway. I wonder...