我正在修改一个程序,它从cvs创建一个位置平坦的EDI文件。输入文件使用UTF-8作为输出必须使用。
我遇到了使用以下代码编写UTF-8字符串的问题:
Public Function WriteFileBinArray(sString() As Byte, iChannel As Integer) As Boolean
Const kbytCarriageReturn As Byte = 13
Const kbytNewLine As Byte = 10
WriteFileBinArray= False
NumberError = 0
sErrore = ""
Put #iChannel, , sString()
Put #iChannel, , kbytCarriageReturn
Put #iChannel, , kbytNewLine
WriteFileBinArray= True
End Function
输出字符串不会有预期的长度。因此位置平面文件将是错误的。如你所知,每个UTF-8字符由两个字节组成。我想问题就在这里。
我如何解决我的问题?
答案 0 :(得分:0)
您说明问题是输出字符串,不会有预期的长度
我原以为这是将输出字符串填充为预期长度的问题。通过将数据复制到所需长度的另一个数组中,并用空格或空字符填充它,使其与预期长度匹配。