2013-11-11 3 views
0

Я изо всех сил, чтобы сделать это, я пытаюсь, я объясню .. Во-первых, простите за мой английский ..Поиск текста и копирование другого текста из файла. C#

У меня есть это:

 int counter = 0; 
     string line; 

     System.IO.StreamReader file = new System.IO.StreamReader(@"myfile.txt"); 
     WebClient testador = new WebClient(); 
     while ((line = file.ReadLine()) != null) 
     { 
      string[] campos = line.Split(':'); 
      counter++; 
     } 

     file.Close(); 

мне нужно он получить слово campos [0], ex. Кампос [0] = яблоко

и искать это слово в другом файле .txt, например: myfile2.txt и скопируйте следующие 10 букв ..

Опять же, простите за мой английский.

EDIT¹: Сначала я получить текст в myfile.txt, например: линия 1 из MyFile.txt является: "яблоко: да: тест" Я использую строку [] Кампос = line.Split (':') , разделить, campos [0] = яблоко, теперь .. мне нужно искать яблоко в файле myfile2.txt и копировать из него следующие 10 букв.

Спасибо, ребята. : D

+1

Что вы пытаетесь? С чем вы столкнулись? Вы спрашиваете, как хранить коллекцию строк? Как открыть другие файлы? Как проверить, содержит ли строка строку? – SLaks

+0

Можете ли вы объяснить немного больше? Вам это нужно только для первого элемента в '' campos'' или все из них? Что делать, если в другом файле имеется более одного слова? Скопировать следующие буквы в другой файл? Куда? – acfrancis

+0

Сначала я получаю текст в файле myfile.txt, например: «Линия 1 из MyFile.txt:« apple: yeah: test »Я использую строку [] campos = line.Split (':'), чтобы разделить, campos [0 ] = apple, теперь .. Мне нужно найти яблоко в файле myfile2.txt и скопировать из него следующие 10 букв. –

ответ

0

Согласно моему пониманию того, что вы хотите сделать, я написал этот код так, чтобы вы могли следовать шаг за шагом. Надеюсь, это поможет вам в том, что вы хотите сделать. Чтобы начать, просто загрузите его двумя текстовыми файлами и запустите его, чтобы увидеть, дает ли он вам результаты, которые вы хотите.

var file1 = @"C:\Users\User\Desktop\file1.txt"; 
var file2 = @"C:\Users\User\Desktop\file2.txt"; 

var file1Lines = File.ReadLines(file1); 
var file2Text = File.ReadAllText(file2); 

var file1WordList = new List<string>(); 
var file2WordListWithExtraTenLetters = new List<string>(); 

foreach (var l in file1Lines) 
{ 
    file1WordList.AddRange(l.Split(':')); 
} 

for (int i = 0; i < file1WordList.Count; i++) 
{ 
    if (file2Text.Contains(file1WordList[i])) 
    { 
     var indexOfWordFromFile1InFile2 = file2Text.IndexOf(file1WordList[i]); 
     file2WordListWithExtraTenLetters.Add(file2Text.Substring(indexOfWordFromFile1InFile2, 10)); 
    } 
} 

// Test it 
foreach (var element in file1WordList) 
{ 
    Console.WriteLine(element); 
} 
Console.WriteLine("====================="); 
foreach (var element in file2WordListWithExtraTenLetters) 
{ 
    Console.WriteLine(element); 
} 
Смежные вопросы