int stv = Convert.ToInt32(Console.ReadLine());
StreamReader read = File.OpenText("Izdelki.txt");
int st = 1;
string newtext=" ";
string line = read.ReadLine();
while (line != null)
{
st++;
if (st != stv)
{
newtext += line;
}
}
我认为这应该有用,但我不确定。我正在为scholl项目做这件事。如果您有其他消息,请写下来。
答案 0 :(得分:1)
使用LINQ,Luke!
int stv = ...
var lines = File.ReadAllLines("Izdelki.txt")
.Where((s, i) => i != stv);
File.WriteAllLines("Izdelki.txt", lines);
也许你应该使用这样的条件:
i != (stv - 1)
答案 1 :(得分:0)
是的,你是正确的,只有从文件中读取而不向其中写入任何内容。
将字符串文件视为string
的数组或集合非常有用。
这意味着当读取文件时,它会将所有内容放入字符串集合/数组中,而写入操作只会将此数组写回文件。
为此,您有两种方法:File.ReadAllLines()
和File.WriteAllLines()
。
您可以采取以下措施:
int stv = Convert.ToInt32(Console.ReadLine());
List<string> file = File.ReadAllLines("Izdelki.txt").ToList();
// find index of line that you need to change here and change it in your List eg file[x] = y
// now save it using File.WriteAllLines("Izdelki.txt", file);