📄 frmgeneralscreenedit.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace San7GeneralScreen
{
public partial class FrmGeneralScreenEdit : FrmINIBase
{
public FrmGeneralScreenEdit()
{
InitializeComponent();
}
public override void OpenFile()
{
//base.OpenFile();
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "*.ini|*.ini";
dlg.Title = "打开General02.ini文件";
if (dlg.ShowDialog() == DialogResult.OK)
{
dgvGeneralInformation.Rows.Clear();
string targetFile = dlg.FileName;
FileStream fs = new FileStream(targetFile, FileMode.Open);
StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("big5"));
string line = "";
List<General> gens = new List<General>();
General curGen = new General();
while ((line = sr.ReadLine()) != null)
{
if (line.StartsWith("[GENERAL]"))
{
gens.Add(curGen);
if (curGen.City != null)
{
DataGridViewRow dgvr = new DataGridViewRow();
dgvr.CreateCells(dgvGeneralInformation);
dgvr.Cells[0].Value = curGen.No;
dgvr.Cells[1].Value = curGen.Name;
for (int i = 0; i < 10; i++)
{
dgvr.Cells[i + 2].Value = curGen.City[i].Display;
}
dgvr.Tag = curGen;
dgvGeneralInformation.Rows.Add(dgvr);
}
curGen = new General();
curGen.City = new List<City>();
}
if (line.StartsWith("No"))
{
curGen.No = GetCommonValue(line);
}
if (line.StartsWith("Name"))
{
curGen.Name = GetCommonValue(line);
}
if (line.StartsWith("City"))
{
curGen.City.Add(new City(line));
}
//Console.WriteLine(line);
}
sr.Close();
fs.Close();
}
}
public override void SaveFile()
{
//base.SaveFile();
SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "*.ini|*.ini";
dlg.Title = "保存General02.ini文件";
dlg.FileName = "General02.ini";
if (dlg.ShowDialog() == DialogResult.OK)
{
FileStream fs = new FileStream(dlg.FileName, FileMode.OpenOrCreate);
StreamWriter sw = new StreamWriter(fs, Encoding.GetEncoding("big5"));
foreach (DataGridViewRow dgvr in dgvGeneralInformation.Rows)
{
if (dgvr.Tag != null)
{
General gen = (General)dgvr.Tag;
sw.WriteLine("[GENERAL]");
sw.WriteLine("No = " + gen.No);
sw.WriteLine("Name = " + gen.Name);
for (int i = 1; i <= 10; i++)
{
sw.WriteLine("City" + i.ToString() + " = " + gen.City[i - 1].Display);
}
sw.WriteLine("");
}
}
sw.Close();
fs.Close();
MessageBox.Show("保存成功!");
}
}
public override void ExecAction()
{
//base.ExecAction();
Random rand = new Random();
foreach (DataGridViewRow dgvr in dgvGeneralInformation.Rows)
{
if (dgvr.Tag != null)
{
bool bNeedRand = false;
General gen = (General)dgvr.Tag;
foreach (City c in gen.City)
{
if (c.CityID != "" && Microsoft.VisualBasic.Conversion.Val(c.CityID) <= 103)
{
bNeedRand = true;
break;
}
}
if (bNeedRand)
{
int curIndex = 2;
foreach (City c in gen.City)
{
if (c.CityID == "")
{
c.CityID = rand.Next(104).ToString();
c.Status = "0";
c.Display = c.CityID + "," + c.Status + " ";
dgvr.Cells[curIndex].Value = c.Display;
}
curIndex++;
}
}
}
}
}
private string GetCommonValue(string strLine)
{
string[] strArr = strLine.Split(new string[] { "=" }, StringSplitOptions.RemoveEmptyEntries);
if (strArr.Length > 1)
{
return strArr[1];
}
return "";
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -