Vuelvo a soltar el Hilo de la pregunta: COMO CREAR UN ARCHIVO TEXTO EN FORMATO UTF-8, por que realmente estoy TOTALMENTE PERDIDO en el proceso :
Yo siempre cree los archivos textos sin inconvenientes, pero esto del formato UTF es otra cosa. Hasta el momento con el aporte de Karinha y Carlos he desarrollado estas alternativas, pero aun me rechaza la WebService que debe de recibir el Archivo.
ALTERNATIVA 1 : Usando la función HB_StrToUTF8(<cStr>[,<cCPID>])---><cUTF8Str> (aquí desconosco para que sirve el Parametro cCPID, quizá ahí este la solución)
- Code: Select all Expand view RUN
** proceso usado
** El Array llamado V_DOCUM contiene varias líneas de textos con Ñ, y vocales con acentos que formaran parte del archivo
FERASE(cFileTempo)
*Creamos el Archivo texto desde el ARRAY
oText := TTxtFile():New( cFileTempo)
FOR I = 1 TO LEN(V_DOCUM)
oText:Add(V_DOCUM[I] )
NEXT I
oText:Close()
*Leemos el Archivo texto creado
MIDATO := MemoRead(cFileTempo)
*Convierto el texto del Archivo creado HB_StrToUTF8(<cStr>[,<cCPID>])---><cUTF8Str>
xtexto := hb_strToUTF8( MIDATO )
*Grabo el archivo
Hb_MemoWrit( cfileDestino, xtexto )
2. ALTERNATIVA : Usando la Funcicion HB_TRANSLATE()
- Code: Select all Expand view RUN
** proceso usado
** El Array llamado V_DOCUM contiene varias líneas de textos con Ñ, y vocales con acentos que formaran parte del archivo
FERASE(cFileTempo)
*Creamos el Archivo texto desde el ARRAY
oText := TTxtFile():New( cFileTempo)
FOR I = 1 TO LEN(V_DOCUM)
oText:Add(V_DOCUM[I] )
NEXT I
oText:Close()
*Leemos el Archivo texto creado
MIDATO := MemoRead(cFileTempo)
*Convierto el texto del Archivo creado
xtexto = hb_translate( MIDATO ,"PLWIN", "UTF8")
*Grabo el archivo
Hb_MemoWrit( cfileDestino, xtexto )
En ambos casos inclusive retornan archivos textos diferentes, definitavmente a algo o mucho que estoy haciendo mal
Les agradeceré sus comentarios
Lubin