Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.07.2010, 19:45   #1
Reanimator13
 
Регистрация: 24.12.2009
Сообщений: 8
По умолчанию Чтение символов после нахождения слова

Доброго времени суток!
Пытаюсь написать программу которая должна будет "склеивать" два файла в третий (все файлы *.txt)
примерно так выглядит первый файл:
Цитата:

от 19.05.2010 N: 630953
Выплатное дело: 630953
СНИЛС 088-794-964 64
Гр. Сидоров Иван Георгиевич
с 01.06.2010 составляет


с 03.06.2010 по 31.10.2003

М.П. НАЧАЛЬНИК ____________

-------------------------------------------------------

от 19.05.2010 N: 630432
Выплатное дело: 630432
СНИЛС 101-830-329 00
Гр. Иванов Игорь Сергеевич
с 01.06.2010 составляет


с 01.06.2010 пожизненно

М.П. НАЧАЛЬНИК ____________

-------------------------------------------------------
и т.д.
Второй файл:
Цитата:
...
3. 171|088-794-964 64|Сидоров И.Г. |20/07/2002| | | | | |Нет данных|
...
Ну и как должен выгладить третий файл (на примере одного)
Цитата:

от 19.05.2010 N: 630953
Выплатное дело: 630953
СНИЛС 088-794-964 64
Гр. Сидоров Иван Георгиевич
с 01.06.2010 составляет


с 03.06.2010 по 31.10.2003
088-794-964 64 Сидоров И.Г. 20/07/2002 Нет данных
М.П. НАЧАЛЬНИК ____________

-------------------------------------------------------
Не могу ни как понять как считать n-ое количество символов после СНИЛС и начать поиск во втором файле этого совпадения.

что "нацарапал" предоставляю:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace Склеивание
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        
        private void OpenFile1_Click(object sender, EventArgs e)
        {
            if (OpenFile.ShowDialog() == DialogResult.OK)
            {
                this.textBox1.Text = OpenFile.FileName;
                StreamReader odin = new StreamReader(textBox1.Text, System.Text.Encoding.GetEncoding(1251));
                string strOdin = odin.ReadToEnd();
                odin.Close();
                textBox4.Text = strOdin;
            }
        }

        private void OpenFile2_Click(object sender, EventArgs e)
        {
            if (OpenFile.ShowDialog() == DialogResult.OK)
            {
                this.textBox2.Text = OpenFile.FileName;
                StreamReader dva = new StreamReader(textBox2.Text, System.Text.Encoding.GetEncoding(1251));
                string strDva = dva.ReadToEnd();
                dva.Close();
                textBox5.Text = strDva;
                
            }
        }

        private void button4_Click(object sender, EventArgs e)
        {
            if (SaveFile.ShowDialog() == DialogResult.OK)
            {
                this.textBox3.Text = SaveFile.FileName;
                StreamWriter vivod = new StreamWriter(textBox3.Text,false,System.Text.Encoding.GetEncoding(1251));
                vivod.Close();
            }
        }

        private void button3_Click(object sender, EventArgs e)
            
        {
            StreamReader Meri = new StreamReader(textBox1.Text, System.Text.Encoding.GetEncoding(1251));
            while (!Meri.EndOfStream) 
            {
                string st = Meri.ReadLine();
                if (st.StartsWith("   СНИЛС "))
                {
                    
                    textBox3.Text = "НАЙДЕНО";
                }

            }

        }
    }
}
Короче помогите кто чем может, заранее спасибо!

Последний раз редактировалось Stilet; 30.07.2010 в 09:42.
Reanimator13 вне форума Ответить с цитированием
Старый 30.07.2010, 09:07   #2
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

Если форма у Вас всегда одинаковая, то считываем из документа построчно, доходим до восьмой строчки, вставляем нужный Вам текст, записываем дальше... если после 13 строчки чтото еще есть проделываем все заново.
Для поиска: >>>
dampirik вне форума Ответить с цитированием
Старый 30.07.2010, 14:47   #3
Reanimator13
 
Регистрация: 24.12.2009
Сообщений: 8
По умолчанию

спасибо за ответ,но я так понимаю вы меня не поняли.....
нужно считать данные после определенного слова (в моем случае это цифры после слова "СНИЛС"), эти цифры я планирую внести во временную переменную и потом искать их во втором текстовом файле, потом после нахождения скопировать или считать и перенести эту строчку так же во временную переменную и вставить ее в нужное место (см. текстовый файл 3..., там будет не одна фамилия) если кто нибудь что нибудь подскажет (или приведет пример), буду очень признателен...
P.S. с файлами работную в 1 раз
Reanimator13 вне форума Ответить с цитированием
Старый 30.07.2010, 15:02   #4
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Если числа всегда будут подобного вида используйте регулярные выражения.
Здесь статья MDSN
Здесь очень хорошо описано как использовать.
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 30.07.2010, 16:30   #5
badgo
Пользователь
 
Регистрация: 18.01.2010
Сообщений: 21
По умолчанию

Согласен с mrChester,можете еще здесь посмотреть http://msdn.microsoft.com/ru-ru/libr...nextmatch.aspx
badgo вне форума Ответить с цитированием
Старый 30.07.2010, 17:31   #6
Reanimator13
 
Регистрация: 24.12.2009
Сообщений: 8
По умолчанию

спасибо, буду читать, учиться...
Reanimator13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти слова с четным кол-вом символов. Си. Terror Общие вопросы C/C++ 2 28.04.2010 16:50
Замена символов на слова в строке Shihmars Общие вопросы C/C++ 3 24.01.2010 18:51
Побитовое чтение символа из таблицы символов в BIOSe Viriat Общие вопросы C/C++ 0 10.01.2010 17:26
программа нахождения и проверки символов/строк MixanMM Общие вопросы Delphi 14 09.07.2009 08:44
Перевод на новую строку после нужного слова Лёшка228 Общие вопросы Delphi 2 09.06.2009 20:32