2019년 9월 26일 목요일

xml XmlSerializer

<FCE_0004>
  <item>
    <TOPT_ZONE_PT>300</TOPT_ZONE_PT>
    <TOPT_ZONE_PB>300</TOPT_ZONE_PB>
    <TOPT_ZONE_HT>300</TOPT_ZONE_HT>
    <TOPT_ZONE_HB>300</TOPT_ZONE_HB>
    <TOPT_ZONE_ST>300</TOPT_ZONE_ST>
    <TOPT_ZONE_SB>300</TOPT_ZONE_SB>
  </item>
  <item />
  <item>
    <TOPT_ZONE_PT>200</TOPT_ZONE_PT>
    <TOPT_ZONE_PB>200</TOPT_ZONE_PB>
    <TOPT_ZONE_HT>200</TOPT_ZONE_HT>
    <TOPT_ZONE_HB>200</TOPT_ZONE_HB>
    <TOPT_ZONE_ST>200</TOPT_ZONE_ST>
    <TOPT_ZONE_SB>200</TOPT_ZONE_SB>
  </item>
</FCE_0004>


[Serializable]
[XmlRoot("FCE_0004")]
public class FCE_ZONE_0004
{
    [XmlElement("item")]
    public FCE_ZONE_TMP_DATA[] FCE_Zone_Temp;
}


[Serializable]
public class FCE_ZONE_TMP_DATA
{
    [XmlElement("TOPT_ZONE_PT")]
    public float TOPT_ZONE_PT;
    [XmlElement("TOPT_ZONE_PB")]
    public float TOPT_ZONE_PB;
    [XmlElement("TOPT_ZONE_HT")]
    public float TOPT_ZONE_HT;
    [XmlElement("TOPT_ZONE_HB")]
    public float TOPT_ZONE_HB;
    [XmlElement("TOPT_ZONE_ST")]
    public float TOPT_ZONE_ST;
    [XmlElement("TOPT_ZONE_SB")]
    public float TOPT_ZONE_SB;
}


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
private static T GetDeserialize<T>(byte[] data)
 
    {
 
        XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
 
        using (MemoryStream ms = new MemoryStream(data))
 
        {
 
            return (T)xmlSerializer.Deserialize(ms);
 
        }
 
    }
 
 
 
public string Serialize<T>(T objectToSerialize)
 
    {
 
        XmlSerializer xmlSerializer = new XmlSerializer(objectToSerialize.GetType());
 
 
 
        using (StringWriter textWriter = new StringWriter())
 
        {
 
            xmlSerializer.Serialize(textWriter, objectToSerialize);
 
            return textWriter.ToString();
 
        }
 
    }
 
 
cs



FCE_ZONE_0004 test = GetDeserialize<FCE_ZONE_0004>(conv_data);


Debug.Log("Length :" + test.FCE_Zone_Temp.Length);


///select * from table
쿼리 여서 여러줄이 나옴

그 여러줄이 List에 알아서 들어감







댓글 없음:

댓글 쓰기

git rejected error(feat. cherry-pick)

 문제 아무 생각 없이 pull을 받지않고 로컬에서 작업! 커밋, 푸시 진행을 해버렷다. push에선 remote와 다르니 당연히 pull을 진행해라고 하지만 로컬에서 작업한 내용을 백업하지 않고 진행하기에는 부담스럽다(로컬작업 유실 가능성) 해결하려...