이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

SerializationInfo 클래스

 

게시 날짜: 2016년 11월

Serialize 하거나 개체를 deserialize 하는 데 필요한 모든 데이터를 저장 합니다. 이 클래스는 상속될 수 없습니다.

네임스페이스:   System.Runtime.Serialization
어셈블리:  mscorlib(mscorlib.dll에 있음)

System.Object
  System.Runtime.Serialization.SerializationInfo

[ComVisibleAttribute(true)]
public sealed class SerializationInfo

이름설명
System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter)

SerializationInfo 클래스의 새 인스턴스를 만듭니다.

System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter, Boolean)

SerializationInfo 클래스의 새 인스턴스를 초기화합니다.

이름설명
System_CAPS_pubpropertyAssemblyName

만 직렬화 하는 동안 serialize 하는 형식의 어셈블리 이름을 가져오거나 설정 합니다.

System_CAPS_pubpropertyFullTypeName

전체 이름을 가져오거나 설정 합니다.는 Type 를 serialize 합니다.

System_CAPS_pubpropertyIsAssemblyNameSetExplicit

어셈블리 이름을 명시적으로 설정 되어 있는지 여부를 가져옵니다.

System_CAPS_pubpropertyIsFullTypeNameSetExplicit

전체 형식 이름이 명시적으로 설정 되어 있는지 여부를 가져옵니다.

System_CAPS_pubpropertyMemberCount

에 추가 된 멤버의 수를 가져옵니다는 SerializationInfo 저장 합니다.

System_CAPS_pubpropertyObjectType

Serialize 할 개체의 형식을 반환 합니다.

이름설명
System_CAPS_pubmethodAddValue(String, Boolean)

에 부울 값을 추가 하는 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Byte)

에 8 비트 부호 없는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Char)

에 유니코드 문자 값을 추가 하는 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, DateTime)

추가 DateTime 값에 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Decimal)

에 10 진수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Double)

에 배정밀도 부동 소수점 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Int16)

에 16 비트 부호 있는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Int32)

32 비트 부호 있는 정수 값에 추가 하는 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Int64)

에 64 비트 부호 있는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Object)

지정된 된 개체에 추가 된 SerializationInfo 가 지정 된 이름의 연결 하는 저장소.

System_CAPS_pubmethodAddValue(String, Object, Type)

에 값을 추가 SerializationInfo 저장, 여기서 value 연결 된 name 으로 serialize 되 고 Typetype합니다.

System_CAPS_pubmethodAddValue(String, SByte)

에 8 비트 부호 있는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, Single)

단 정밀도 부동 소수점 값에 추가 하는 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, UInt16)

에 16 비트 부호 없는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, UInt32)

에 32 비트 부호 없는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodAddValue(String, UInt64)

에 64 비트 부호 없는 정수 값을 추가 SerializationInfo 저장 합니다.

System_CAPS_pubmethodEquals(Object)

지정한 개체가 현재 개체와 같은지 여부를 확인합니다. (Object에서 상속됨)

System_CAPS_pubmethodGetBoolean(String)

부울 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetByte(String)

8 비트 부호 없는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetChar(String)

유니코드 문자 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetDateTime(String)

검색 한 DateTime 에서 값의 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetDecimal(String)

10 진수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetDouble(String)

배정밀도 부동 소수점 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetEnumerator()

반환 된 SerializationInfoEnumerator 에 이름-값 쌍을 반복 하는 데는 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetHashCode()

기본 해시 함수로 작동합니다.(Object에서 상속됨)

System_CAPS_pubmethodGetInt16(String)

16 비트 부호 있는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetInt32(String)

32 비트 부호 있는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetInt64(String)

64 비트 부호 있는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetSByte(String)

8 비트 부호 있는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetSingle(String)

단 정밀도 부동 소수점 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetString(String)

검색 한 String 에서 값의 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetType()

현재 인스턴스의 Type을 가져옵니다.(Object에서 상속됨)

System_CAPS_pubmethodGetUInt16(String)

16 비트 부호 없는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetUInt32(String)

32 비트 부호 없는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetUInt64(String)

64 비트 부호 없는 정수 값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodGetValue(String, Type)

값을 검색 된 SerializationInfo 저장 합니다.

System_CAPS_pubmethodSetType(Type)

설정의 Type serialize 할 개체입니다.

System_CAPS_pubmethodToString()

현재 개체를 나타내는 문자열을 반환합니다.(Object에서 상속됨)

이 클래스는 사용자 지정 serialization 동작을 사용 하 여 개체에서 사용 됩니다. GetObjectData 메서드 중 하나를 ISerializable 또는 ISerializationSurrogate 채웁니다는 SerializationInfo 이름, 형식 및 값을 serialize 할 정보의 각 부분을 사용 하 여 저장 합니다. Deserialization을 수행 하는 동안 적절 한 함수는이 정보를 추출할 수 있습니다.

개체에 추가 됩니다는 SerializationInfo 사용 하 여 serialization 때 저장는 AddValue 메서드에서 추출 하 고는 SerializationInfo deserialization에 사용 하 여 저장 된 GetValue 메서드.

Serialization을 사용자 지정 하는 방법에 대 한 자세한 내용은 참조 사용자 지정 Serialization합니다.

다음 코드 예제는 SerializationInfo 다양 한 값의 사용자 지정 serialization 및 deserialization에 대 한 합니다.

using System;
using System.Text;
using System.IO;
// Add references to Soap and Binary formatters.
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization.Formatters.Soap ;
using System.Runtime.Serialization;


[Serializable]
public class MyItemType : ISerializable
{
    public MyItemType()
    {
        // Empty constructor required to compile.
    }

    // The value to serialize.
    private string myProperty_value;

    public string MyProperty
    {
        get { return myProperty_value; }
        set { myProperty_value = value; }
    }

    // Implement this method to serialize data. The method is called 
    // on serialization.
    public void GetObjectData(SerializationInfo info, StreamingContext context)
    {
        // Use the AddValue method to specify serialized values.
        info.AddValue("props", myProperty_value, typeof(string));

    }

    // The special constructor is used to deserialize values.
    public MyItemType(SerializationInfo info, StreamingContext context)
    {
        // Reset the property value using the GetValue method.
        myProperty_value = (string) info.GetValue("props", typeof(string));
    }
}

// This is a console application. 
public static class Test
{
    static void Main()
    {
        // This is the name of the file holding the data. You can use any file extension you like.
        string fileName = "dataStuff.myData";

        // Use a BinaryFormatter or SoapFormatter.
        IFormatter formatter = new BinaryFormatter();
        //IFormatter formatter = new SoapFormatter();

        Test.SerializeItem(fileName, formatter); // Serialize an instance of the class.
        Test.DeserializeItem(fileName, formatter); // Deserialize the instance.
        Console.WriteLine("Done");
        Console.ReadLine();
    }

    public static void SerializeItem(string fileName, IFormatter formatter)
    {
        // Create an instance of the type and serialize it.
        MyItemType t = new MyItemType();
        t.MyProperty = "Hello World";

        FileStream s = new FileStream(fileName , FileMode.Create);
        formatter.Serialize(s, t);            
        s.Close();
    }


    public static void DeserializeItem(string fileName, IFormatter formatter)
    {
        FileStream s = new FileStream(fileName, FileMode.Open);
        MyItemType t = (MyItemType)formatter.Deserialize(s);
        Console.WriteLine(t.MyProperty);            
    }       
}

.NET Framework
1.1 이후 사용 가능

이 형식의 모든 public static(Visual Basic의 공유 Visual Basic의 경우) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전이 보장되지 않습니다.

맨 위로 이동
표시: