我使用的是Spectre.Console
,有很多AnsiConsole.MarkupLine
命令,如下所示:
AnsiConsole.MarkupLine($"[lime]File size:[/] [bold]\t{file.Length,-10}[/]");
我想在文本文件中输出相同的纯文本,不带颜色,例如
var msg = $"[lime]File size:[/] [bold]\t{file.Length,-10}[/]"
AnsiConsole.MarkupLine(msg);
var msgclean = AnsiConsole.StripTag(msg);
LogToFile(msgclean);
有没有办法去掉标记?或者把控制台输出重定向到一个文件?
2条答案
按热度按时间lskq00tm1#
看看下面的语言扩展是否适合你。正则表达式模式取自this post。尝试通过dotnetfiddle。
5anewei62#
我仔细研究了他们的API,发现这个扩展方法应该可以做到这一点:一个月一个月一个月一个月