前面所说,你事实上就是把ASCII码字符变成了全角UNICODE码,这个动作在EditBox.Valid事件中执行,于是EditBox.Value的长度会改变。但你储存到数据表的动作,却不是根据EditBox.Value的实际字符来计算,而是从b(15)数组中把15行未知内容的东西写入字段。总之查那些代码我头痛,现在不用你的数组,我直接把EditBox.Value中的数据顺序填入字段中(不管你的字段长度、也不管是不是都是80个字符宽),每个字段的内容,是可以包含回车换行符的,只要它被输出,就会换行、分段。
其实,你根本不用这样分15个字段,应该用一个Memo字段储存整篇文章,在输入输出时限制篇幅罢了——因为那些格式文件规定了就只能在那个框框里。这种限制,不能死定字数,必须同时考虑行数,一行一个字,你也只能最多输入15个字。