private void aisinoDataGrid1_DataGridCellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { switch (this.aisinoDataGrid1.get_Columns()[e.ColumnIndex].Name) { case "KPZT": e.Value = ShowString.ShowKPZT(e.Value.ToString()); break; case "DJZT": e.Value = ShowString.ShowDJZT(e.Value.ToString()); break; case "DJZL": e.Value = ShowString.ShowFPZL(e.Value.ToString()); break; case "SFZJY": e.Value = ShowString.ShowBool(e.Value.ToString()); break; case "HYSY": e.Value = ShowString.ShowBool(e.Value.ToString()); break; case "HSJBZ": e.Value = ShowString.ShowBool(e.Value.ToString()); break; } }
private void aisinoDataGrid1_DataGridCellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { string name = this.aisinoDataGrid1.get_Columns()[e.ColumnIndex].Name; if (name != null) { if (!(name == "KPZT")) { if (name == "DJZT") { e.Value = ShowString.ShowDJZT(e.Value.ToString()); } else if (name == "DJZL") { e.Value = ShowString.ShowFPZL(e.Value.ToString()); } else if (name == "SFZJY") { e.Value = ShowString.ShowBool(e.Value.ToString()); } else if (name == "HYSY") { e.Value = ShowString.ShowBool(e.Value.ToString()); } } else { e.Value = ShowString.ShowKPZT(e.Value.ToString()); } } }
private void AutoSplitView_Load(object sender, EventArgs e) { this.dgvOriginalHead.Columns.Clear(); this.dgvOriginalHead.ColumnCount = 5; this.dgvOriginalHead.Columns[0].Name = "单据号"; this.dgvOriginalHead.Columns[1].Name = "单据种类"; this.dgvOriginalHead.Columns[2].Name = "购方名称"; this.dgvOriginalHead.Columns[3].Name = "购方税号"; this.dgvOriginalHead.Columns[4].Name = "金额合计"; string str = ShowString.ShowFPZL(this.bill.DJZL); this.dgvOriginalHead.Rows.Add(new object[] { this.bill.BH, str, this.bill.GFMC, this.bill.GFSH, this.bill.JEHJ }); this.dgvOriginalHead.Columns[4].DefaultCellStyle = this.dgvOriginalHead.styleMoney; this.dgvOriginalHead.ClearSelection(); }
private void DanJuBeforeCF() { this.dataGridMX1.Columns.Clear(); this.dataGridMX1.ColumnCount = 5; this.dataGridMX1.Columns[0].Name = "单据号"; this.dataGridMX1.Columns[1].Name = "单据种类"; this.dataGridMX1.Columns[2].Name = "购方名称"; this.dataGridMX1.Columns[3].Name = "购方税号"; this.dataGridMX1.Columns[4].Name = "金额合计"; string str = ShowString.ShowFPZL(this.bill.DJZL); this.dataGridMX1.Rows.Add(new object[] { this.bill.BH, str, this.bill.GFMC, this.bill.GFSH, this.bill.JEHJ }); this.dataGridMX1.Columns[4].DefaultCellStyle = this.dataGridMX1.styleMoney; this.dataGridMX1.ClearSelection(); }
public static void Main(string[] args) { /*DemoDelegate.ShowMsg("Hello world! "); * DemoDelegate dmo = new DemoDelegate(); * dmo.ShowInfo("Show me what you got");*/ DemoDelegate dmos = new DemoDelegate(); ss += new DemoDelegate().ShowInfo; ss += DemoDelegate.ShowMsg; ss += DemoDelegate.ShowMsg; ss("Xin chao cac ban"); // chay delegate DemoDelegate dd = new DemoDelegate(); dd.Running(); }
public static void Main(string[] args) { // DemoDelegate.ShowMsg("xin chao cac ban"); // DemoDelegate dd = new DemoDelegate(); // dd.ShowInfo("xin chao cac ban"); // ShowString ss = new ShowString(DemoDelegate.ShowMsg);// truyen vao ten cua ham DemoDelegate dd = new DemoDelegate(); // nap them vao vao danh sach thuc hien ss += DemoDelegate.ShowMsg; ss += DemoDelegate.ShowMsg; ss("xin chao cac ban");// chay delegate Calculate c = new Calculate(Calcutation.Add); c += Calcutation.Sub; c += Calcutation.Multi; c += Calcutation.Div; int rs = c(5, 3); Console.WriteLine("rs: "+rs); dd.Running(); }
public static void OpenProcess(string cmd, String parems, ShowString dialogRes, bool waiteToEnd) { System.Diagnostics.Process myProcess = new Process(); //设置外部程序名 myProcess.StartInfo.FileName = cmd; //设置外部程序的启动参数(命令行参数)为test.txt myProcess.StartInfo.Arguments = parems; //设置外部程序工作目录为 C:\ myProcess.StartInfo.WorkingDirectory = "C:\\"; myProcess.StartInfo.UseShellExecute = false; //此处必须为false否则引发异常 myProcess.StartInfo.RedirectStandardInput = dialogRes != null; //标准输入 myProcess.StartInfo.RedirectStandardOutput = dialogRes != null; //标准输出 myProcess.StartInfo.RedirectStandardError = dialogRes != null; //重定向错误输出 //不显示命令行窗口界面 myProcess.StartInfo.CreateNoWindow = true; myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //声明一个程序类 try { myProcess.Start(); if (dialogRes != null) { dialogRes.showString(myProcess.StandardOutput.ReadToEnd()); } if (waiteToEnd) { myProcess.WaitForExit(); } myProcess.Close(); } catch (System.ComponentModel.Win32Exception e) { if (dialogRes != null) { dialogRes.showString("系统找不到指定的程序文件。\n" + e.Message); } } }
public GenerateFP(InvType typeFP) { this.log = LogUtil.GetLogger <GenerateFP>(); this.fptkBLL = new FPTKdal(); this.billBL = SaleBillCtrl.Instance; this.generBL = GenerateInvoice.Instance; this.taxCard = TaxCardFactory.CreateTaxCard(); this.IsNewJDC = false; this.NPCType = 0; this.components = null; this.FPleftnum = 0; this.Initialize(); base.StartPosition = FormStartPosition.CenterScreen; this.fpType = typeFP; this.FPType_Card = (InvoiceType)this.fpType; this.djType = CommonTool.GetInvTypeStr(typeFP); this.lableFPZL.Text = ShowString.ShowFPZL(this.djType); this.FPleftnum = (int)this.taxCard.GetInvNumber(this.FPType_Card); }
//启动外部程序 public static void OpenProcess(string cmd, String parems, ShowString dialogRes) { OpenProcess(cmd, parems, dialogRes, true); }
//编译全部脚本文件 public void compileScripts(ShowString shower) { String scriptSuffix = ".c2ds";//脚本代码文件后缀名 String scriptFilePath = ""; bool lostKssExe = false; if (FileTypeRegister.FileTypeRegistered(scriptSuffix)) { FileTypeRegInfo regInfo = FileTypeRegister.GetFileTypeRegInfo(scriptSuffix); String exePath = regInfo.ExePath; if (File.Exists(exePath)) { for (int i = 0; i < mapsManagerForExport.listExpScriptFiles.Count; i++) { String file = (String)mapsManagerForExport.listExpScriptFiles[i]; scriptFilePath = Consts.PATH_PROJECT_FOLDER + Consts.SUBPARH_KSS + file; if (File.Exists(scriptFilePath)) { if (shower != null) { shower.showString("开始编译脚本文件[" + scriptFilePath + "]"); } IOUtil.OpenProcess(exePath, "-CF " + scriptFilePath, null, true); String kseFilePath = scriptFilePath.Replace(".c2ds", ".bin"); String kseFileName = kseFilePath.Substring(kseFilePath.LastIndexOf('\\') + 1, kseFilePath.Length - (kseFilePath.LastIndexOf('\\') + 1)); if (File.Exists(kseFilePath)) { File.Copy(kseFilePath, Consts.exportC2DBinFolder + kseFileName, true); File.Delete(kseFilePath); } else { if (shower != null) { shower.showString("编译脚本文件[" + scriptFilePath + "]过程中发生问题"); } } } else { if (shower != null) { shower.showString("丢失脚本文件[" + scriptFilePath + "],因此无法汇编此脚本"); } } } } else { lostKssExe = true; } } else { lostKssExe = true; } if (lostKssExe) { MessageBox.Show("没有找到被注册的\"CycloneScriptEditor.exe\",请在任意位置打开一次,它将自动被注册。", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
//压缩图片 public static void packFiles(ShowString dialog, String srcPath, String searchPatten, int maxPack, bool deleteOld) { //清除包裹文件 dialog.showString("==>清除旧包裹文件"); String[] files = Directory.GetFiles(srcPath, "*.*"); for (int i = 0; i < files.Length; i++) { int pos = files[i].LastIndexOf('\\'); String name = files[i].Substring(pos + 1, files[i].Length - (pos + 1)); if (name.IndexOf("filePacks") >= 0 || name.IndexOf("aep") >= 0) { File.Delete(files[i]); } } //开始转换 files = IOUtil.listFiles(srcPath, searchPatten); dialog.showString("==>共发现" + files.Length + "个文件"); ArrayList filePackList = new ArrayList(); FilePack filePack = new FilePack(); filePackList.Add(filePack); int addUpSize = 0; for (int i = 0; i < files.Length; i++) { int pos = files[i].LastIndexOf('\\'); String name = files[i].Substring(pos + 1, files[i].Length - (pos + 1)); byte[] data = IOUtil.ReadFile(files[i]); addUpSize += data.Length; if (i == 0)//第一个包,则将当前文件压入这个包 { filePack.addFile(name, data); if (addUpSize >= maxPack) { filePack = new FilePack(); filePackList.Add(filePack); addUpSize = data.Length; } } else//不是第一个包,则将当前文件压入后一个包 { if (addUpSize >= maxPack) { filePack = new FilePack(); filePackList.Add(filePack); addUpSize = data.Length; } filePack.addFile(name, data); } } //开始输出 String dictionFile = srcPath + "\\" + Consts.exportFileName + "_filePacks.bin"; FileStream fsDictionary = new FileStream(dictionFile, FileMode.Create); IOUtil.writeShort(fsDictionary, (short)filePackList.Count); IOUtil.writeShort(fsDictionary, (short)files.Length); dialog.showString("==>即将输出" + (filePackList.Count) + "个包裹"); int outputFiles = 0; for (int i = 0; i < filePackList.Count; i++) { FilePack pack = (FilePack)filePackList[i]; IOUtil.writeShort(fsDictionary, (short)pack.fileNames.Count); String strPack = srcPath + "\\" + Consts.exportFileName + "_" + i + ".aep"; FileStream fsPackI = new FileStream(strPack, FileMode.Create); int dataPos = 0; dialog.showString("-->开始输出第" + (i + 1) + "个包裹,共" + pack.fileNames.Count + "个文件"); for (int j = 0; j < pack.fileNames.Count; j++) { String fileName = (String)(pack.fileNames[j]); byte[] data = (byte[])pack.fileDatas[j]; IOUtil.writeString(fsDictionary, fileName); IOUtil.writeInt(fsDictionary, dataPos); IOUtil.writeInt(fsDictionary, data.Length); IOUtil.writeData(fsPackI, data); dataPos += data.Length; dialog.showString("->加入第" + (j + 1) + "个文件[" + fileName + "],长度[" + data.Length + "],当前包裹大小[" + dataPos + "]"); if (deleteOld) { File.Delete(srcPath + "\\" + fileName); } outputFiles++; dialog.setStep(outputFiles, files.Length); } fsPackI.Flush(); fsPackI.Close(); dialog.showString("->完成输出第" + (i + 1) + "个包裹"); } fsDictionary.Flush(); fsDictionary.Close(); }
private void DJHBYL_Load(object sender, EventArgs e) { try { int num; List <Dictionary <string, string> > list = new List <Dictionary <string, string> >(); Dictionary <string, string> item = new Dictionary <string, string>(); item.Add("AisinoLBL", "序号"); item.Add("Property", "XH"); item.Add("Type", "Text"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "商品名称"); item.Add("Property", "SPMC"); item.Add("Type", "Text"); item.Add("Width", "120"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "规格型号"); item.Add("Property", "GGXH"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "数量"); item.Add("Property", "SL"); item.Add("Type", "Text"); item.Add("Width", "60"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "单价"); item.Add("Property", "DJ"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "金额"); item.Add("Property", "JE"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "税率"); item.Add("Property", "SLV"); item.Add("Type", "Text"); item.Add("Width", "50"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "税额"); item.Add("Property", "SE"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "计量单位"); item.Add("Property", "JLDW"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "含税价标志"); item.Add("Property", "HSJBZ"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "单据行性质"); item.Add("Property", "DJHXZ"); item.Add("Type", "Text"); item.Add("RowStyleField", "DJHXZ"); item.Add("Visible", "False"); list.Add(item); this.aisinoDataGridq.set_ColumeHead(list); this.aisinoDataGridq.get_Columns()["JE"].DefaultCellStyle.Format = "0.00"; this.aisinoDataGridq.get_Columns()["SE"].DefaultCellStyle.Format = "0.00"; this.aisinoDataGridq.set_DataSource(new AisinoDataSet()); this.dataGridMXDJHBQ.Columns.Clear(); this.dataGridMXDJHBQ.get_NewColumns().Add("单据号;BH"); this.dataGridMXDJHBQ.get_NewColumns().Add("单据种类;DJZL;;80"); this.dataGridMXDJHBQ.get_NewColumns().Add("购方名称;GFMC;;130"); this.dataGridMXDJHBQ.get_NewColumns().Add("购方税号;GFSH;;100"); this.dataGridMXDJHBQ.get_NewColumns().Add("金额合计;JEHJ;;100;money"); this.dataGridMXDJHBQ.get_NewColumns().Add("单据日期;DJRQ;;100"); this.dataGridMXDJHBQ.get_NewColumns().Add("备注;BZ;;80"); this.dataGridMXDJHBQ.Bind(); for (num = 0; num < this.listBill.Count; num++) { this.dataGridMXDJHBQ.Rows.Add(new object[] { this.listBill[num].BH, ShowString.ShowFPZL(this.listBill[num].DJZL), this.listBill[num].GFMC, this.listBill[num].GFSH, this.listBill[num].JEHJ, this.listBill[num].DJRQ, this.listBill[num].BZ }); } this.dataGridMXDJHBQ.Columns["DJRQ"].DefaultCellStyle.Format = "yyyy-MM-dd"; this.dataGridMXDJHBH.Columns.Clear(); this.dataGridMXDJHBH.get_NewColumns().Add("单据号;BH"); this.dataGridMXDJHBH.get_NewColumns().Add("单据种类;DJZL"); this.dataGridMXDJHBH.get_NewColumns().Add("购方名称;GFMC;;130"); this.dataGridMXDJHBH.get_NewColumns().Add("购方税号;GFSH;;130"); this.dataGridMXDJHBH.get_NewColumns().Add("金额合计;JEHJ;;100;money"); this.dataGridMXDJHBH.get_NewColumns().Add("单据日期;DJRQ"); this.dataGridMXDJHBH.get_NewColumns().Add("备注;BZ;;150"); this.dataGridMXDJHBH.Bind(); this.dataGridMXDJHBH.Rows.Add(new object[] { this.mergedBill.BH, ShowString.ShowFPZL(this.mergedBill.DJZL), this.mergedBill.GFMC, this.mergedBill.GFSH, this.mergedBill.JEHJ, this.mergedBill.DJRQ, this.mergedBill.BZ }); this.dataGridMXDJHBH.Columns["DJRQ"].DefaultCellStyle.Format = "yyyy-MM-dd"; list = new List <Dictionary <string, string> >(); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "序号"); item.Add("Property", "XH"); item.Add("Type", "Text"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "商品名称"); item.Add("Property", "SPMC"); item.Add("Type", "Text"); item.Add("Width", "120"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "规格型号"); item.Add("Property", "GGXH"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "数量"); item.Add("Property", "SL"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "单价"); item.Add("Property", "DJ"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "金额"); item.Add("Property", "JE"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "税率"); item.Add("Property", "SLV"); item.Add("Type", "Text"); item.Add("Width", "50"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "税额"); item.Add("Property", "SE"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleRight"); item.Add("HeadAlign", "MiddleRight"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "计量单位"); item.Add("Property", "JLDW"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "含税价标志"); item.Add("Property", "HSJBZ"); item.Add("Type", "Text"); item.Add("Width", "100"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "商品税目"); item.Add("Property", "SPSM"); item.Add("Type", "Text"); item.Add("Width", "80"); item.Add("Align", "MiddleLeft"); item.Add("HeadAlign", "MiddleLeft"); list.Add(item); item = new Dictionary <string, string>(); item.Add("AisinoLBL", "单据行性质"); item.Add("Property", "DJHXZ"); item.Add("Type", "Text"); item.Add("RowStyleField", "DJHXZ"); item.Add("Visible", "False"); list.Add(item); this.aisinoDataGridh.set_ColumeHead(list); this.aisinoDataGridh.get_Columns()["JE"].DefaultCellStyle.Format = "0.00"; this.aisinoDataGridh.get_Columns()["SE"].DefaultCellStyle.Format = "0.00"; this.aisinoDataGridh.set_DataSource(new AisinoDataSet()); string s = PropertyUtil.GetValue("WBJK_DJHB_DATAGRID_HBMX"); int result = 1; int.TryParse(s, out result); this.aisinoDataGridh.set_DataSource(this.djhbBLL.GetMingXi(20, result)); this.dataGridMXDJHBH.SelectionMode = DataGridViewSelectionMode.CellSelect; this.dataGridMXDJHBQ.SelectionMode = DataGridViewSelectionMode.CellSelect; this.aisinoDataGridq.set_SelectionMode(DataGridViewSelectionMode.CellSelect); this.aisinoDataGridh.set_SelectionMode(DataGridViewSelectionMode.CellSelect); int count = this.aisinoDataGridh.get_Rows().Count; for (num = 0; num < count; num++) { string str2 = this.aisinoDataGridh.get_Rows()[num].Cells["SLV"].Value.ToString(); string str3 = this.aisinoDataGridh.get_Rows()[num].Cells["XH"].Value.ToString(); if (((str2 != null) && (str2 != "")) && (str2 != "中外合作油气田")) { string str4 = this.billBL.ShowSLV(this.mergedBill, str3, str2); if (str4 != "") { this.aisinoDataGridh.get_Rows()[num].Cells["SLV"].Value = str4; } } } } catch (Exception exception) { HandleException.HandleError(exception); } }
//压缩图片 public static void packFiles(ShowString dialog,String srcPath, String searchPatten, int maxPack,bool deleteOld) { //清除包裹文件 dialog.showString("==>清除旧包裹文件"); String[] files = Directory.GetFiles(srcPath, "*.*"); for (int i = 0; i < files.Length; i++) { int pos = files[i].LastIndexOf('\\'); String name = files[i].Substring(pos + 1, files[i].Length - (pos + 1)); if (name.IndexOf("filePacks")>=0 || name.IndexOf("aep")>=0) { File.Delete(files[i]); } } //开始转换 files = IOUtil.listFiles(srcPath, searchPatten); dialog.showString("==>共发现" + files.Length + "个文件"); ArrayList filePackList = new ArrayList(); FilePack filePack = new FilePack(); filePackList.Add(filePack); int addUpSize = 0; for (int i = 0; i < files.Length; i++) { int pos = files[i].LastIndexOf('\\'); String name = files[i].Substring(pos + 1, files[i].Length - (pos + 1)); byte[] data = IOUtil.ReadFile(files[i]); addUpSize += data.Length; if (i == 0)//第一个包,则将当前文件压入这个包 { filePack.addFile(name, data); if (addUpSize >= maxPack) { filePack = new FilePack(); filePackList.Add(filePack); addUpSize = data.Length; } } else//不是第一个包,则将当前文件压入后一个包 { if (addUpSize >= maxPack) { filePack = new FilePack(); filePackList.Add(filePack); addUpSize = data.Length; } filePack.addFile(name, data); } } //开始输出 String dictionFile = srcPath + "\\" + Consts.exportFileName + "_filePacks.bin"; FileStream fsDictionary = new FileStream(dictionFile, FileMode.Create); IOUtil.writeShort(fsDictionary, (short)filePackList.Count); IOUtil.writeShort(fsDictionary, (short)files.Length); dialog.showString("==>即将输出" + (filePackList.Count) + "个包裹"); int outputFiles = 0; for (int i = 0; i < filePackList.Count; i++) { FilePack pack = (FilePack)filePackList[i]; IOUtil.writeShort(fsDictionary, (short)pack.fileNames.Count); String strPack = srcPath + "\\" + Consts.exportFileName + "_" + i + ".aep"; FileStream fsPackI = new FileStream(strPack, FileMode.Create); int dataPos = 0; dialog.showString("-->开始输出第" + (i + 1) + "个包裹,共" + pack.fileNames.Count + "个文件"); for (int j = 0; j < pack.fileNames.Count; j++) { String fileName = (String)(pack.fileNames[j]); byte[] data = (byte[])pack.fileDatas[j]; IOUtil.writeString(fsDictionary, fileName); IOUtil.writeInt(fsDictionary, dataPos); IOUtil.writeInt(fsDictionary, data.Length); IOUtil.writeData(fsPackI, data); dataPos += data.Length; dialog.showString("->加入第" + (j + 1) + "个文件[" + fileName + "],长度[" + data.Length + "],当前包裹大小[" + dataPos + "]"); if (deleteOld) { File.Delete(srcPath+"\\"+fileName); } outputFiles++; dialog.setStep(outputFiles, files.Length); } fsPackI.Flush(); fsPackI.Close(); dialog.showString("->完成输出第" + (i + 1) + "个包裹"); } fsDictionary.Flush(); fsDictionary.Close(); }