2017-01-22 10 views
0

У меня есть код вроде этого:.поиска и добавить новую строку в C#

reset <= '1'; 
ds <= '0'; 
wait for 20ns; 
wait until clk = '0'; 
reset <= '0'; 
wait until clk = '1'; 
wait until clk = '0'; 
inexp <= x"00903ad9"; 
inmod <= x"03b2c159"; 
report "clock init"; 
indata <= x"72624326"; 
wait until clk = '1'; 
wait for 2ns; 
ds <= '1'; 
wait until ready = '0'; 
ds <= '0'; 
wait until ready = '1'; 
wait for 500ns; 
reset <= '1'; 
ds <= '0'; 
wait for 20ns; 
wait until clk = '0'; 
reset <= '0'; 

и я хочу, чтобы искать "<=" в каждой строке и добавьте добавляемую новую строку перед этой линией (запись в файл) Я считаю, это слово в моем коде, но для добавления не идеи! получить найти и дать линию этим кодом:

int counter = 1; 
    string line; 

    System.IO.StreamReader file = new System.IO.StreamReader("e:\\file.txt"); 
    while ((line = file.ReadLine()) != null) 
    { 
     if (line.Contains("<=")) 
     { 
      Console.WriteLine(counter.ToString() + ": " + line);      
     } 
     counter++; 
    } 

    file.Close(); 

Благодарности

ответ

2

Чтобы записать в файл новый текст изменить код:

System.IO.StreamReader file = new System.IO.StreamReader("e:\\file.txt"); 
System.IO.StreamWriter resultFile = new System.IO.StreamWriter("e:\\resultFile.txt", false); 
while ((line = file.ReadLine()) != null) 
{ 
    if (line.Contains("<=")) 
    { 
     resultFile.WriteLine(Environment.NewLine + counter.ToString() + ": " + line);      
    } 

    // if you don't want to write lines without "<=" - delete "else" block 
    else 
    { 
     resultFile.WriteLine(counter.ToString() + ": " + line);  
    } 
    counter++; 
} 

В этом коде вы создаете новый файл и писать каждый от file.txt. Если строка содержит <=, вы добавляете новую строку в начале.

Итак, на диске E вы найдете новый файл resultFile.txt с необходимым текстом.

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