Documente Academic
Documente Profesional
Documente Cultură
Serializare
using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
class MainApp
{
public static void Main()
{
SampleObject output_object = new SampleObject();
94
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
formatter.Serialize(output_stream,output_object);
output_stream.Close();
Console.WriteLine("");
Console.WriteLine("Before reading:");
Console.WriteLine("property1: {0}",input_object.m_property1);
Console.WriteLine("property2: {0}",input_object.m_property2);
Console.WriteLine("property3: {0}",input_object.m_property3);
Console.WriteLine("After reading:");
Console.WriteLine("property1: {0}",input_object.m_property1);
Console.WriteLine("property2: {0}",input_object.m_property2);
Console.WriteLine("property3: {0}",input_object.m_property3);
}
}
[Serializable]
public class SampleObject
{
public String m_property1;
[NonSerialized] public int m_property2;
public double m_property3;
95
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
public SampleObject()
{
m_property1=null;
m_property2=0;
m_property3=0.0;
}
}
/*
Before reading:
property1: Initial Object
property2: 33
property3: 3,14
After reading:
property1: Sample Object
property2: 0
property3: 0,0123456789
*/
using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
class MainApp
{
public static void Main()
{
SampleObject output_object = new SampleObject();
96
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
FileShare.None);
formatter.Serialize(output_stream,output_object);
output_stream.Close();
SampleObject input_object =
(SampleObject)formatter.Deserialize(input_stream);
input_stream.Close();
Console.WriteLine("property1: {0}",input_object.m_property1);
Console.WriteLine("property2: {0}",input_object.m_property2);
Console.WriteLine("property3: {0}",input_object.m_property3);
for(int i=0; i<1; );
}
}
[Serializable]
public class SampleObject : ISerializable
{
public String m_property1;
public int m_property2;
public double m_property3;
public SampleObject()
{
m_property1=null;
m_property2=0;
m_property3=0.0;
}
97
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
98
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
12. Activităţi
Lucrarea de laborator № 1
Crearea aplicaţiei de tipul Dialog Based
Stabilirea sarcinii.
Să creaţi o clasă pentru domeniul ales. Să elaboraţi o aplicaţie de tip Dialog Based pentru
clasa respectivă, care va asigura lucrul cu obiecte ale acestei clase, şi anume: crearea obiectelor,
salvarea obiectelor pe disc, preluarea obiectelor de pe disc, vizualizarea informaţiilor despre
obiecte, editarea obiectelor, eliminarea obiectelor, realizarea metodelor etc. La elaborarea
interfeţei aplicaţiei să folosiţi următoarele elemente de dirijare (controale):
Static Text, Edit Box, Button, Check Box, Radio Button, Combo Box, List Box, Spin, List
Control, Tree Control, Tab Control.
Notă. Pentru a alege obiectul din listă să utilizaţi controlul List Box sau Combo Box, iar
pentru a vizualiza parametrii obiectelor – List Control.
99
Programare vizuală (suport de curs), A.Pereteatcu, S.Pereteatcu
13. Bibliografia
1. Bates Jon, Tompkins Tim Utilizare Visual C++ 6/ Trad. Din limba engl. – Bucureşti:
Editura Teora, 1999. – 760 p.
2. Янг М. Дж. Visual C++. Полное руководство.— Киев: ―Ирина‖, BHV, 2000
3. Гильберт С., Маккарти Б. Самоучитель Visual C++ 6.— Киев: ―DiaSoft‖, 1999
4. Холзнер С. Visual C++ 6. Учебный курс.— СПб: ―Питер‖, 2001
5. Robinson L. Programarea bazelor de date cu Vizual C++ 6.— Bucureşti: Teora, 2001
6. Schildt H. C++. Manual complet.— Bucureşti: Teora, 2000.
7. Страустрап Б. Язык программирования C++.— М: ―БИНОМ‖, 1999
8. Мешков А, Тихомиров Ю. Visual C++ и MFC .— СПб: BHV, 2000
9. А.В. Фролов, Г.В. Фролов Визуальное проектирование приложений C#. – Москва:
Издательство Кудиц-Образ.
10. Фролов А.В., Фролов Г.В. Графический интерфейс GDI в Microsoft Windows. — М.:
ДИАЛОГ-МИФИ, 1993.
11. Петцольд Ч. Программирование для Microsoft Windows на C#. — М.: Издательско-
торговый дом Русская Редакция, 2002.
12. Кристиан Нейгел, Билл Ивьен, Джей Глинн, и др. C# 2005 для профессионалов.
Диалектика, 2006. – 1376 с.
1. http://msdn.microsoft.com/en-gb/library/default.aspx
2. http://frolov-lib.ru/
3. http://windowsclient.net
4. http://www.firststeps.ru/
100