Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/263.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# 将一些文本插入到现有文本文件的确切位置_C#_File - Fatal编程技术网

C# 将一些文本插入到现有文本文件的确切位置

C# 将一些文本插入到现有文本文件的确切位置,c#,file,C#,File,我试图在现有文件的确切位置插入一些文本。 我应用的第一种方法- 这对什么都没有影响 string newData; string data = System.IO.File.ReadAllText("lal.txt"); int indx = data.IndexOf("1"); if (data.Contains("1")) { MessageBox.Show(indx.ToString());

我试图在现有文件的确切位置插入一些文本。 我应用的第一种方法- 这对什么都没有影响

       string newData;
       string data = System.IO.File.ReadAllText("lal.txt");
       int indx = data.IndexOf("1");
       if (data.Contains("1"))
       {
           MessageBox.Show(indx.ToString());
           newData=data.Insert(indx+1, "ooooooooooooooooooooooooo");
           File.WriteAllText("lal.txt",data);

       }
我正在使用的另一种方法--这种方法完全擦除所有内容或不创建任何内容

 string newData;
        string data = System.IO.File.ReadAllText("lal.txt");
       int indx = data.IndexOf("1");
       if (data.Contains("1"))
       {
           MessageBox.Show(indx.ToString());
           newData=data.Insert(indx+1, "ooooooooooooooooooooooooo");

           var f = new StreamWriter(File.Create("ll1.txt"));
           f.Write(newData);
           //data.Insert(indx, "OIasasas");
       }

第一个代码段有错误:更改的字符串位于newData变量中,但您将未更改的字符串写入了文件

第二个代码段还有另一个错误:您编写了正确的字符串,但未关闭文件流,因此可能无法进行更改

这应该行得通

string data = System.IO.File.ReadAllText("lal.txt");
int indx = data.IndexOf("1");
if (indx != -1)
{
    var newData = data.Insert(indx + 1, "ooooooooooooooooooooooooo");
    File.WriteAllText("lal.txt", newData);
}

第一个代码段有错误:更改的字符串位于newData变量中,但您将未更改的字符串写入了文件

第二个代码段还有另一个错误:您编写了正确的字符串,但未关闭文件流,因此可能无法进行更改

这应该行得通

string data = System.IO.File.ReadAllText("lal.txt");
int indx = data.IndexOf("1");
if (indx != -1)
{
    var newData = data.Insert(indx + 1, "ooooooooooooooooooooooooo");
    File.WriteAllText("lal.txt", newData);
}