/// <summary> /// Hstシートのデータ埋めと書式あてこみメソッド /// </summary> /// <param name="book">ExcelBookオブジェクト</param> /// <param name="lists">HULFTホスト定義データオブジェクト</param> /// <returns></returns> public bool UpdateHstBook(IWorkbook book, List <HulftHstDef> lists) { var sheet = book.GetSheet(ConstHulft.SHEETNAME_HST); // セルに充てるスタイルの組み立て Dictionary <String, ICellStyle> styles = MyCreateStyles.CreateStyles(book); // 左上にシート名を WriteCell(sheet, styles["indexLabel"], (0, 0), ConstHulft.SHEETNAME_HST); // データヘッダーの組み立て var header = new HulftHstDef("Header"); var headerList = header.GetListValues(); // データヘッダーブロックの書き出し (int y, int x)p = (2, 1); headerList.Insert(0, "No."); for (int x = 0; x < headerList.Count; x++) { WriteCell(sheet, styles["indexLabel"], (p.y, p.x + x), headerList[x]); } sheet.SetAutoFilter(new CellRangeAddress(p.y, p.y, p.x, p.x + headerList.Count - 1)); // データブロックの書き出し p = (3, 1); for (int y = 0; y < lists.Count; y++) { var dataList = lists[y].GetListValues(); dataList.Insert(0, (y + 1).ToString()); for (int x = 0; x < dataList.Count; x++) { if (x == 1) { WriteCell(sheet, styles["defDataBa"], (p.y + y, p.x + x), dataList[x]); } else { WriteCell(sheet, styles["defData"], (p.y + y, p.x + x), dataList[x]); } } } // カラムのAutoSize for (int x = 0; x < headerList.Count; x++) { sheet.AutoSizeColumn(p.x + x, true); } return(true); }
/// <summary> /// HULFTホスト定義のフラットテキストファイルを読んで、HulftHstDefクラスのListを生成して返す。 /// </summary> /// <param name="file">HULFTホスト定義ファイル名</param> /// <returns>HulftHstDefクラスのList</returns> public static List <HulftHstDef> StringBuildHulftHstDef(string HtmlText) { List <HulftHstDef> hulftHstDefs = new List <HulftHstDef>(); HulftHstDef hulftdef = new HulftHstDef(); string fileContent = ""; using (StringReader sr = new StringReader(HtmlText)) { while ((fileContent = sr.ReadLine()) != null) { //Debug.WriteLine(fileContent); fileContent = fileContent.Trim(); if (fileContent == "") { continue; } if (fileContent == "#") { continue; } string[] array = fileContent.Split('='); switch (array[0]) { case "# ID": hulftdef.ClearRest(); hulftdef.Id = array[1]; break; case "HOST": hulftdef.Host = array[1]; break; case "HOSTTYPE": hulftdef.HostType = array[1]; break; case "KCODETYPE": hulftdef.KCodeType = array[1]; break; case "RCVPORT": hulftdef.RcvPort = array[1]; break; case "REQPORT": hulftdef.ReQPort = array[1]; break; case "COMMENT": hulftdef.Comment = array[1]; break; case "JISYEAR": hulftdef.JisYear = array[1]; break; case "CONNECTTYPE": hulftdef.ConnectType = array[1]; break; case "HOSTSPSNUM": hulftdef.HostSPSNum = array[1]; break; case "SENDPERMIT": hulftdef.SendPermit = array[1]; break; case "HULJOBPERMIT": hulftdef.HULJobPermit = array[1]; break; case "HULSNDRCPERMIT": hulftdef.HULSNDRCPermit = array[1]; break; case "HULRJOBPERMIT": hulftdef.HULRJOBPermit = array[1]; break; case "USRNOTIFY": hulftdef.UsrNotiry = array[1]; break; case "HUL7MODE": hulftdef.HUL7Mode = array[1]; break; case "MYPROXYNAME": hulftdef.MyProxyName = array[1]; break; case "MYPROXYPORT": hulftdef.MyProxyPort = array[1]; break; case "ALLOWINSTTRANS": hulftdef.AllowWinstTrans = array[1]; break; case "END": hulftHstDefs.Add(hulftdef.Clone()); break; } } } return(hulftHstDefs); }