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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2009, 15:33   #1
Bobrik
Пользователь
 
Регистрация: 13.05.2009
Сообщений: 23
По умолчанию Создание объекта из данных файла

Доброго времени суток!
Задача такая:
Есть текст типа:
"а"="какой-то текст или значение"
"б"="................"
и т.д.
Нужно присвоить данные полям А значение "а" и далее.
Как это реализуется?
Bobrik вне форума Ответить с цитированием
Старый 14.05.2009, 16:12   #2
OrdJONY
.NET-чик
Форумчанин
 
Аватар для OrdJONY
 
Регистрация: 24.03.2007
Сообщений: 569
По умолчанию

Если вы за ранее не знаете что это за класс будет и что за свойства то я вот набросал небольшой примерчик:
Код:
class Class1
    {
        public string A
        { get; set; }
        public string B
        { get; set; }
    }
Код:
Class1 cl = new Class1();
            //Получаем тип класс
            Type tCls = cl.GetType();
            //Ищем необходимое нам свойство
            PropertyInfo propInf = tCls.GetProperty("A");
            //Получаем метод который присваивает значения
            MethodInfo metInf = propInf.GetSetMethod();
            string[] text = {"test"};
            //Собственно вызываем наш метод
            metInf.Invoke(cl, text);
"Разработка под веб - как работа с пылесосом: нихрена не прикольно, но засасывает"
Мо маленький городок
OrdJONY вне форума Ответить с цитированием
Старый 14.05.2009, 16:24   #3
Bobrik
Пользователь
 
Регистрация: 13.05.2009
Сообщений: 23
По умолчанию

спасибо огромное! вектор получен. :-)
Bobrik вне форума Ответить с цитированием
Старый 14.05.2009, 18:25   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Bobrik, посмотри сериализацию.
Hollander вне форума Ответить с цитированием
Старый 15.05.2009, 12:58   #5
Bobrik
Пользователь
 
Регистрация: 13.05.2009
Сообщений: 23
По умолчанию

а если типы известны и класс есть. как пробежать по файлу и скажем в строке "ПлательщикСчет=4070281045004203000 1" разобрать на "плательщикСчет" и сам счет,
занести это в класс с уже имеющимися типами полей.
разбиение:
Код:
int p = input.IndexOf("=");
            string propname = input.Substring(0, p);
            string propvalue = input.Substring(p + 1, input.Length - p);
есть в классе поле public int platSchet;
как присвоить plat.platSchet значение счета?
если можно код, а то извилины уже не работают.
Bobrik вне форума Ответить с цитированием
Старый 15.05.2009, 13:00   #6
OrdJONY
.NET-чик
Форумчанин
 
Аватар для OrdJONY
 
Регистрация: 24.03.2007
Сообщений: 569
По умолчанию

Советую вам попробовать начать использовать XML файлы для хранения любых данных, начиная от настроек и заканчивая БД (не большими БД естественно ).
"Разработка под веб - как работа с пылесосом: нихрена не прикольно, но засасывает"
Мо маленький городок
OrdJONY вне форума Ответить с цитированием
Старый 15.05.2009, 13:03   #7
Bobrik
Пользователь
 
Регистрация: 13.05.2009
Сообщений: 23
По умолчанию

это да, а если только файл исключительно в .тхт?
Bobrik вне форума Ответить с цитированием
Старый 15.05.2009, 13:14   #8
OrdJONY
.NET-чик
Форумчанин
 
Аватар для OrdJONY
 
Регистрация: 24.03.2007
Сообщений: 569
По умолчанию

разницы какое расширение нет =)) Главное то что внутри Могу набросать несколько примеров работы с XML to LINQ
"Разработка под веб - как работа с пылесосом: нихрена не прикольно, но засасывает"
Мо маленький городок
OrdJONY вне форума Ответить с цитированием
Старый 15.05.2009, 13:39   #9
Bobrik
Пользователь
 
Регистрация: 13.05.2009
Сообщений: 23
По умолчанию

внутри именно так:
начало
а=и
б=3
в=...
конецдока.

но буду очень признателен вашим примерам. :-)
Bobrik вне форума Ответить с цитированием
Старый 16.05.2009, 09:35   #10
OrdJONY
.NET-чик
Форумчанин
 
Аватар для OrdJONY
 
Регистрация: 24.03.2007
Сообщений: 569
По умолчанию

Если XML тогда вам нужно сделать нечто:
<MyDB>
<item name="a">b</item>
<item name='b'>3</item>
<item name="c">bla</item>
</MyDB>

Вот пример простого вывода:
Код:
XElement rootDoc = XElement.Load("filename.xml");
            foreach (XElement item in rootDoc.Descendants())
            {
                Console.WriteLine("Имя: {0}, Значение: {1}",item.Attribute("name").Value, item.Value);
            }
нужно подключить System.Xml.Linq;
"Разработка под веб - как работа с пылесосом: нихрена не прикольно, но засасывает"
Мо маленький городок
OrdJONY вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание модуля данных внутри объекта Шурин БД в Delphi 2 19.03.2009 10:38
Динамичесое создание объекта Черничный Общие вопросы Delphi 8 29.06.2008 23:01
Динамическое создание объекта ANGa Помощь студентам 3 10.04.2008 18:14
Динамическое создание объекта Fruit Общие вопросы Delphi 5 24.01.2008 11:00
Динамическое создание объекта Fruit Общие вопросы Delphi 2 16.01.2008 21:18