Compartir a través de


Emisión de un CSV

El procedimiento para emitir un CSV se muestra en el código de ejemplo siguiente que usa CONVERT.

Para emitir un archivo CSV

  1. Cree una variable de estructura a partir de la estructura del bloque de control de verbos (VCB) que se aplica al verbo que se va a emitir.

    #include <wincsv.h>  
        .  
        .  
    struct convert  conv_block;  
    
    

    Las estructuras VCB se declaran en el archivo WINCSV.H; una de estas estructuras se denomina CONVERT.

  2. Limpie (ponga a cero) las variables dentro de la estructura.

    memset( conv_block, '\0', sizeof( conv_block ) );  
    
    

    Este procedimiento no es necesario. Sin embargo, ayuda a depurar y leer el contenido de la memoria. También elimina la posibilidad de que las versiones futuras de un verbo sean sensibles a los campos que se omiten en la versión actual.

  3. Asigne valores a las variables VCB necesarias.

    conv_block.opcode = SV_CONVERT;  
    conv_block.direction = SV_ASCII_TO_EBCDIC;  
    conv_block.char_set = SV_AE;  
    conv_block.len = sizeof(tpstart_name);  
    conv_block.source = (LPBYTE) tpstart_name;  
    conv_block.target = (LPBYTE) tpstart.tp_name;  
    
    

    Los valores SV_CONVERT, SV_ASCII_TO_EBCDIC y SV_AE son constantes simbólicas que representan enteros. Estas constantes se definen en el archivo WINCSV.H.

    La matriz de caracteres TPSTART_NAME contiene una cadena ASCII que se convertirá en EBCDIC y se colocará en la matriz de caracteres TPSTART. TP_NAME.

  4. Invoque el verbo. El único parámetro es un puntero a la dirección de la estructura que contiene el VCB del verbo.

    ACSSVC((LONG) &conv_block);  
    
    

    También puede usar la siguiente instrucción:

    ACSSVC_C((LONG) &conv_block);  
    
    
  5. Use los valores devueltos por el verbo.

    if( conv_block.primary_rc == SV_OK ) {  
    /* other statements */  
        .  
        .  
        .