Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用C语言将日志文件转换为excel工作表#_C#_.net_Regex_Visual Studio 2010_Logging - Fatal编程技术网

C# 用C语言将日志文件转换为excel工作表#

C# 用C语言将日志文件转换为excel工作表#,c#,.net,regex,visual-studio-2010,logging,C#,.net,Regex,Visual Studio 2010,Logging,我有一个类似于下面的日志文件,我想将此日志文件转换为excel Sheet 示例日志文件 DateTime: 2012-12-10 20:27:10 Command: ALTER INDEX [Mypageviews] ON [WhosOff].[dbo].[PageViews] REORGANIZE WITH (LOB_COMPACTION = ON) Comment: ObjectType: Table, IndexType: NonClustered, ImageText: N/A, Ne

我有一个类似于下面的日志文件,我想将此日志文件转换为excel Sheet

示例日志文件

DateTime: 2012-12-10 20:27:10
Command: ALTER INDEX [Mypageviews] ON [WhosOff].[dbo].[PageViews] REORGANIZE WITH (LOB_COMPACTION = ON)
Comment: ObjectType: Table, IndexType: NonClustered, ImageText: N/A, NewLOB: No, FileStream: N/A, AllowPageLocks: Yes, PageCount: 7639, Fragmentation: 8.1817
Outcome: Succeeded
Duration: 00:00:41
DateTime: 2012-12-10 20:27:51

DateTime: 2012-12-10 20:27:52
Command: ALTER INDEX [MyVisitKeys] ON [WhosOff].[dbo].[Visit] REBUILD WITH (SORT_IN_TEMPDB = OFF, ONLINE = ON)
Comment: ObjectType: Table, IndexType: NonClustered, ImageText: N/A, NewLOB: No, FileStream: N/A, AllowPageLocks: Yes, PageCount: 7229, Fragmentation: 94.4667
Outcome: Succeeded
Duration: 00:00:06
DateTime: 2012-12-10 20:27:58
我想用C#将上面的日志文本文件转换为excel工作表中的以下格式。 输出

StartTime             IndexName     Dbnanme Tbname
2012-12-10 20:27:10  MyPageviews    WhosOff PageViews
2012-12-10 20:27:52  MyVisitKeys    WhoOff  Visit

有人能告诉我如何编写程序来实现上述输出吗?

您可以尝试实现。在那里,您可以轻松地从数据表等构建Excel文件

否则,请尝试使用html表创建文件,将其另存为.xls并在Excel中打开。 或者为什么不只是.csv格式

我并没有一个解析和转换的具体代码示例,但对于大多数人来说,它似乎足够简单易懂?以下是一些可能有帮助的参考资料:


    • 在我看来,最简单的方法是将其转换为。所有版本的excel都能很好地识别它。但要小心日期、时间、小数和所有其他特定于语言环境的格式化值。Excel将尝试将所有这些值转换为其内部表示形式,只有在计算机区域设置中表示的值时,这才会成功。我认为您需要将输入解析为有意义的内容,这将是问题中最复杂的部分

      但是,一旦您拥有某种结构的数据,最基本的方法就是创建一个分隔文本文件(例如csv),然后将其导入Excel

      要做到这一点,只需在每一列值和新行上的每一行之间加一个逗号(或您选择的任何分隔符)


      还有更优雅、更复杂的解决方案,例如以开放式Office格式输出xml文档,或者访问Excel对象模型。正如我所说,每一项都更加优雅,但学习曲线会更加陡峭。

      你的意思是上面是你的输入,下面是你的输出吗?@ryadavilli yes output应该重定向到excel文件!!将其作为一组行读入,分析所需的行集,将其写入CSV或excel。您可以尝试将.txt文件拖放到excel中,并查看它是如何输出的。如果输出不适合你,你最好开始破解代码。。你必须从文件中获取所有文本,找到一种方法将其分离,放入数组中,然后在你的应用程序中使用excel重新构建它。你看过excel互操作库吗?这应该为如何创建新的excel工作表并将数据写入其中提供了一个基本的起点。我不能只使用C#内置正则表达式。@user1095881好的,如果您需要“纯”excel文件而不能使用第三方库,您应该使用excel互操作库,请参阅