Tengo un fichero que cuando lo muestro en la consola, aparece coloreado (tiene unos códigos para que salga coloreado), Quisiera convertirlo en un texto sin colores, ¿como lo puedo hacer?
Os adjunto, el fichero en cuestion...
Quitar Salida De Colores A Texto Plano.
Subject: Quitar Salida De Colores A Texto Plano.
Last edited by jsbsan on Saturday, 27 May 2017, 13:01; edited 1 time in total
Last edited by jsbsan on Saturday, 27 May 2017, 13:01; edited 1 time in total
l.txt | ||
Description: | Fichero con código de colores | Download |
Filename: | l.txt | |
Filesize: | 2.52 KB | |
Downloaded: | 27 Time(s) |
l.txt | ||
Description: | Fichero con código de colores | Download |
Filename: | l.txt | |
Filesize: | 2.52 KB | |
Downloaded: | 27 Time(s) |
l.txt | ||
Description: | Fichero con código de colores | Download |
Filename: | l.txt | |
Filesize: | 2.52 KB | |
Downloaded: | 27 Time(s) |
Subject: Re: Quitar Salida De Colores A Texto Plano.
Bueno, al final era un problema del caracter "Escape", chr$(27).
Como lo que me interesaba es extraer el texto que estaba entre dos codigo de colores, lo he podido hacer asi:
contacto = Between(ltmp, Chr$(27) & "[0;31m" & Chr$(27) & "[1;31m", Chr$(27) & "[0;31m")
Siendo:
ltmp: la linea de texto donde esta le texto coloreado
Between: una funcion que extrae el texto contenido entre dos textos (http://jsbsan.blogspot.com.es/2011/10/updaterayo-nueva-clase-up-poder-buscar.html)
contacto: el texto que me interesa
Como lo que me interesaba es extraer el texto que estaba entre dos codigo de colores, lo he podido hacer asi:
contacto = Between(ltmp, Chr$(27) & "[0;31m" & Chr$(27) & "[1;31m", Chr$(27) & "[0;31m")
Siendo:
ltmp: la linea de texto donde esta le texto coloreado
Between: una funcion que extrae el texto contenido entre dos textos (http://jsbsan.blogspot.com.es/2011/10/updaterayo-nueva-clase-up-poder-buscar.html)
contacto: el texto que me interesa
Subject: Re: Quitar Salida De Colores A Texto Plano.
Last edited by shordi on Saturday, 27 May 2017, 17:02; edited 2 times in total
Yo tengo hecho algo parecido para "decolorar" la salida de un comando que genera cosas así. Lo hago directamente en el comando
Public Function decolorar() As String 'devuelve un listado con información detallada del sistema
Dim slistado As String
'Este de abajo es el que yo tengo hecho para almacenar en una base de datos ese comando
' Shell "inxi -Fox |sed -r \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" " To slistado
'adaptándolo a tu fichero (y al path donde lo tengas, claro):
Shell "cat ~/Escritorio/l.txt |sed -r \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" " To slistado
Return slistado
End
Dim slistado As String
'Este de abajo es el que yo tengo hecho para almacenar en una base de datos ese comando
' Shell "inxi -Fox |sed -r \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" " To slistado
'adaptándolo a tu fichero (y al path donde lo tengas, claro):
Shell "cat ~/Escritorio/l.txt |sed -r \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" " To slistado
Return slistado
End
Last edited by shordi on Saturday, 27 May 2017, 17:02; edited 2 times in total
Subject: Re: Quitar Salida De Colores A Texto Plano.
Shordi:
Muy buena la funcion, me ha servido mucho !!!, la voy a comentar en mi blog y subirla al curso de gambas.
Gracias
Citar:
Muy buena la funcion, me ha servido mucho !!!, la voy a comentar en mi blog y subirla al curso de gambas.
Gracias
Page 1 of 1
You cannot post new topicsYou cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events
This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo
Generation Time: 0.1259s (PHP: -37% SQL: 137%)
SQL queries: 26 - Debug Off - GZIP Enabled