Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将datagridview中的更改保存到文本文件_C#_Winforms_Datagridview_Text Files - Fatal编程技术网

C# 将datagridview中的更改保存到文本文件

C# 将datagridview中的更改保存到文本文件,c#,winforms,datagridview,text-files,C#,Winforms,Datagridview,Text Files,我已经从datagridview中的textfile中读取了数据,现在如果用户在运行时更改了datagridview值,我想对textfile进行更改? 这是我读取文件的代码,现在我想更新文本文件中该特定位置的数据并将其写入 private void button1_Click(object sender, EventArgs e) { string line = ""; string text = ""; bool si = fa

我已经从datagridview中的textfile中读取了数据,现在如果用户在运行时更改了datagridview值,我想对textfile进行更改? 这是我读取文件的代码,现在我想更新文本文件中该特定位置的数据并将其写入

    private void button1_Click(object sender, EventArgs e)
    {
        string line = "";
        string text = "";
        bool si = false;
        int w = 0;
        bool t = false;
        bool counter = false;
        int length = 0;
        const Int32 BufferSize = 128;
        int groupid = -1;
        int stringid = -1;
        string[] split;
        int tnog = 0;
        if (file.Contains("random.TST"))
        {
            using (var fileStream = File.OpenRead(this.file))
            using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, BufferSize))
                while ((line = streamReader.ReadLine()) != null)
                {
                    if (line.Contains('$') && (line.Contains('@') || line.Contains('}')))
                    {
                        split = line.Split(' ', '@', '}');
                    }
                    else if (line.Contains('$'))
                    {
                    }
                    else if (line.Contains('|'))
                    {
                        counter = false;
                    }
                    else if (!(counter))
                    {
                        split = line.Split(' ', '@');
                        for (int i = 0; i < split.Length; i++)
                        {
                            if (t)
                            { }
                            else if (!t)
                            {
                                if (split[i].Trim() == "")
                                {
                                    groupid = 0;
                                }
                                else if (split[i].Trim() != "")
                                {
                                    groupid = Convert.ToInt16(split[i]);
                                    t = true;
                                    tnog++;
                                }
                            }

                            counter = true;
                        }
                    }

                    else if (counter)
                    {
                        //split = line.Split(' ');
                        if (line.Contains('|'))
                        {
                            counter = false;
                        }
                        else if (counter)
                        {
                            split = line.Split(' ', '@', '}');
                            for (int i = 0; i < split.Length; i++)
                            {
                                if (si)
                                {
                                    if (split[i].Trim() == "")
                                    {
                                        //text[i] = " ";
                                    }
                                    else if (split[i].Trim() != "")
                                    {
                                        text += Convert.ToString(split[i]);
                                        text += " ";
                                        length = text.Length;
                                    }

                                }
                                else if (!si)
                                {
                                    if (split[i].Trim() == "")
                                    {
                                        // sid[i] = 0;
                                    }
                                    else if (split[i].Trim() != "")
                                    {
                                        stringid = Convert.ToInt16(split[i]);
                                        si = true;
                                    }

                                }

                            }
                            if ((groupid == -1) || (stringid == -1))
                            { }
                            else
                            {
                                dataGridView1.Rows.Add(groupid, stringid, text, length);
                                text = "";
                                if (tnog % 2 == 0)
                                {
                                    dataGridView1.Rows[w].DefaultCellStyle.ForeColor = Color.Gray;
                                    dataGridView1.Rows[w].DefaultCellStyle.BackColor = Color.Yellow;

                                }
                                else
                                {
                                    dataGridView1.Rows[w].DefaultCellStyle.ForeColor = Color.Plum;
                                    dataGridView1.Rows[w].DefaultCellStyle.BackColor = Color.RoyalBlue;
                                }
                                w++;
                            }

                            si = false;
                            t = false;
                        }


                    }
                }
            textBox1.Text = Convert.ToString(tnog);
        }
        else
        {
            MessageBox.Show("Invalid File:");
        }
    }
private void按钮1\u单击(对象发送者,事件参数e)
{
字符串行=”;
字符串文本=”;
bool-si=假;
int w=0;
bool t=假;
布尔计数器=假;
整数长度=0;
const Int32 BufferSize=128;
int-groupid=-1;
int stringid=-1;
字符串[]拆分;
int-tnog=0;
if(file.Contains(“random.TST”))
{
使用(var fileStream=File.OpenRead(this.File))
使用(var streamReader=newstreamreader(fileStream,Encoding.UTF8,true,BufferSize))
而((line=streamReader.ReadLine())!=null)
{
if(line.Contains('$')&&(line.Contains('@')| | line.Contains('}'))
{
split=line.split('''@','}');
}
else if(第行包含(“$”)
{
}
else if(行包含(“|”))
{
计数器=假;
}
否则,如果(!(计数器))
{
拆分=行。拆分(“@”);
for(int i=0;i
您确实应该考虑将数据绑定到datagridview(您能给我们一些文件中的示例行吗?),但如果不能


将整个文件读入字符串,并用唯一的占位符计数器(即{1}、{2})替换所有相关值。在将字符串写回文件之前,请用datagridview数据替换占位符计数器。

您能告诉我们您需要什么吗?我已经发布了我的阅读代码。但我不知道从哪里开始写部分。与其尝试将更改插入文本文件,只要从datagridview的内容创建一个全新的文件就行了