Utf 8 VB6:使用UTF8字符串编写平面文件

Utf 8 VB6:使用UTF8字符串编写平面文件,utf-8,vb6,Utf 8,Vb6,我正在修改一个从cvs创建位置平面EDI文件的程序。输入文件使用UTF-8,因为输出必须使用UTF-8 我面临一个问题,即使用以下代码编写UTF-8字符串: Public Function WriteFileBinArray(sString() As Byte, iChannel As Integer) As Boolean Const kbytCarriageReturn As Byte = 13 Const kbytNewLine

我正在修改一个从cvs创建位置平面EDI文件的程序。输入文件使用UTF-8,因为输出必须使用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字符由两个字节组成。我想问题就在这里


如何解决我的问题?

您表示问题是输出字符串将没有预期的长度


我本以为这是一个将输出字符串填充为预期长度的问题。将数据复制到另一个所需长度的数组中,并用空格或空字符填充,使其与预期长度匹配。

可能重复使用ADODB-是,用于文本,而不是数据库。看看我的VBA答案,我很抱歉,但我做不到。