Separar linea texto por tabulaciones

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Zinker
    Junior Member
    • nov
    • 4

    #1

    Separar linea texto por tabulaciones

    Hola!

    Tengo que cargar un archivo desde servidor y las líneas del archivo separarlas en campos por tabulaciones.

    Cargar ficheros desde local y separarlos por tabulaciones es tan sencillos como fijar en los parámetros FILETYPE = 'DAT', como sabéis.

    Pero al cargar desde servidor, con el OPEN/READ DATASET, toda la linea del fichero se copia entera a la tabla interna.

    Necesitaría que esa línea ya se pudiera separar directamente en tabulaciones, o que cada línea de la tabla interna pudiera separarse más tarde (aunque no creo que sea posible porque se pierden las tabulaciones)

    Algunos campos de la linea a cargar tienen espacios, por lo que el SPLIT <campo> AT ' ', no sería válido.

    Gracias por vuestra ayuda.
  • ballan
    Senior Member
    • oct
    • 671

    #2
    Tendras que declarar una tabla interna del tipo

    data: begin of tabla occurs 0,

    campo1 type ..
    tabulador1 type x
    campo2 type...

    y luego al campo tabulador le pasas el codigo ascii del tabulador que si no me equivoco es el 09

    Comentario

    • Zinker
      Junior Member
      • nov
      • 4

      #3
      La clave está en:


      DATA: c_tab(1) TYPE c VALUE cl_abap_char_utilities=>horizontal_tab.

      y luego

      SPLIT string AT c_tab INTO campo1 campo2.

      Con eso funciona perfectamente. El type x que comentas por ahí arriba no funcionó porque el split no cogía separadores de ese tipo.

      Comentario

      Trabajando...