2016-08-10 2 views
0
  using (StreamReader file = new StreamReader(mainMenu.deckFile)) 
     { 
      while ((line = file.ReadLine()) != null) 
      { 

Я уже читаю строку, которую хочу заменить, но я не знаю, как заменить строку текстом, хранящимся в переменной. Помощь приветствуется. Благодаря!Как заменить строку в текстовом файле строковой переменной?

+0

можете ли вы привести пример того, что вы хотите сделать? Я не понимаю qs. Thks. –

+0

Возможный дубликат [Заменить слово из определенной строки в текстовом файле] (http://stackoverflow.com/questions/22926306/replace-a-word-from-a-specific-line-in-a-text- файл) –

ответ

4

Вы не можете «заменить» строку в текстовом файле. Вы должны прочитать весь текстовый файл в коллекцию в своем коде, заменить строку своим новым значением, а затем полностью записать текстовый файл.

string[] lines = File.ReadAllLines(filePath); 

// find and replace the line you want. 

File.WriteAllLines(filePath, lines); 
+0

Большое спасибо! Я был застрял с «не могу получить доступ к файлу, потому что он используется другим процессом» после использования этого, но я понял, что поставил команду «File.WriteAllLines» внутри скобок «using (Streamreader)».: D – Headshot

+0

Yep, 'File .ReadAllLines' и 'File.WriteAllLines' аккуратно инкапсулируют механизм' using', чтобы не допустить неприятностей :) –

0

Прочитайте содержимое файла строковой переменной или другой подходящей переменной.

Если вы пишете содержимое файла в строку var, используйте mystringvar.indexof (myline), чтобы увидеть, существует ли строка, а затем используйте mystringvar.replace (myline, mynewline), чтобы заменить старую строку на новую. Затем обновите текстовый файл с помощью mystringvar

Смежные вопросы