c#实现进出库数据更新问题
我写了一个仓库入库和出库的管理软件的代码,但是每次运行的时候,都会显示同样的库存信息,不管出库了多少...即使删掉了库存.运行软件的时候还是会以前的库存信息。代码如下:private void button2_Click(object sender, EventArgs e)//----------取出
{
StreamReader M = new StreamReader("news\\no.txt");//读取ID
string a = M.ReadLine();
M.Close();
Time();
if (outname.Text != "")
{
if (outnum.Text != "")
{
string[] lines = File.ReadAllLines("news\\inname.txt");//读取总信息
for (int i = 0; i < lines.Length; i++)
{
string[] line = lines[i].ToString().Split('\t');//读取信息
if (line[0] == outname.Text)//找到那一项时
{
int q1 = int.Parse(line[1]);
int q2 = int.Parse(outnum.Text);
if ( q1>= q2)//判断库存是否足够取出
{
StreamWriter dd = new StreamWriter("news\\inname.txt");
dd.Write("");
dd.Close();
string D = int.Parse(line[1]) - int.Parse(outnum.Text) + "";
for (int j = 0; j < i; j++)//输入前面的值
{
StreamWriter a1 = File.AppendText("news\\inname.txt");
a1.WriteLine(lines[j]);
a1.Close();
}
for (int x = i + 1; x < lines.Length; x++)//写入后面的值
{
StreamWriter a2 = File.AppendText("news\\inname.txt");
a2.WriteLine(lines[x]);
a2.Close();
}
StreamWriter a3 = File.AppendText("news\\inname.txt");//写入更改的值
a3.WriteLine(line[0] + '\t' + D + '\t' + r);
a3.Close();
StreamWriter a4 = File.AppendText("news\\" + outname.Text + ".txt");//写入详细信息列表
a4.WriteLine(a+'\t'+outname.Text + '\t' + outunit.Text +'\t'+outnum.Text+ '\t' + outpri.Text + '\t' + "取" + '\t' + (int.Parse(outnum.Text) * int.Parse(outpri.Text)) +'\t'+r+ '\t' + outws.Text + '\t' + outman.Text + '\t' + outcap.Text);
a4.Close();
long S = long.Parse(a);
S += 1;
StreamWriter T = new StreamWriter("news\\no.txt");
T.Write(S + "");
T.Close();
MessageBox.Show("取出成功!");
clear();
}
else
{
MessageBox.Show("对不起,库存只有" + line[1] + "不足" + outnum.Text);
}
}
}
}
else
{
MessageBox.Show("请输入出库的数量");
}
}
else
{
MessageBox.Show("请选择出库名称");
}
}
private void manform_Activated(object sender, EventArgs e)
{
Shows();
showname();
}