private bool WriteView(string fileName, ViewArchiveSource source) { var view = source.View; var writer = new StreamWriter(fileName, false, Encoding.UTF8); writer.WriteLine("FUNCTION,SELFDURATION,SELFPERCENT%,TOTAL(MS),MAX(MS),COUNT,PATH"); foreach (var item in view) { if (item is EventBoardItem) { var board = item as EventBoardItem; var builder = new StringBuilder(); builder.Append(board.Function); builder.Append(spliter_); builder.Append(board.SelfTime); builder.Append(spliter_); builder.Append(board.SelfPercent); builder.Append(spliter_); builder.Append(board.Total); builder.Append(spliter_); builder.Append(board.MaxTime); builder.Append(spliter_); builder.Append(board.Count); builder.Append(spliter_); builder.Append(board.Path); writer.WriteLine(builder.ToString()); } } return(true); }
private bool WriteView(string fileName, ViewArchiveSource source) { var view = source.View; var excel = new Application(); //excel.Visible = true; excel.DisplayAlerts = false; var workbooks = excel.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); var worksheet = (Worksheet)workbooks.Worksheets[1]; worksheet.Name = "Frame"; var column = 1; worksheet.Cells[FrameTableType.Function][column] = "FUNCTION"; worksheet.Cells[FrameTableType.SelfDuration][column] = "SELFDURATION(MS)"; worksheet.Cells[FrameTableType.SelfPercent][column] = "SELFPERCENT%"; worksheet.Cells[FrameTableType.Total][column] = "TOTAL(MS)"; worksheet.Cells[FrameTableType.Max][column] = "MAX(MS)"; worksheet.Cells[FrameTableType.Count][column] = "COUNT"; worksheet.Cells[FrameTableType.Path][column] = "PATH"; foreach (var item in view) { if (item is EventBoardItem) { ++column; var eventItem = item as EventBoardItem; worksheet.Cells[FrameTableType.Function][column] = eventItem.Function; worksheet.Cells[FrameTableType.SelfDuration][column] = eventItem.SelfTime; worksheet.Cells[FrameTableType.SelfPercent][column] = eventItem.SelfPercent; worksheet.Cells[FrameTableType.Total][column] = eventItem.Total; worksheet.Cells[FrameTableType.Max][column] = eventItem.MaxTime; worksheet.Cells[FrameTableType.Count][column] = eventItem.Count; worksheet.Cells[FrameTableType.Path][column] = eventItem.Path; } } workbooks.SaveCopyAs(fileName); workbooks.Close(); excel.Quit(); return(true); }