C# Newton json 사용방법 (part - 2)

Software/C#|2023. 1. 27. 14:46
반응형

part-2 에서는 part-1에서 사용된 방법에서 좀더 직관적으로 코드를 작성하는 방법을 설명합니다. 

저장되는 데이타 형식은 동일하지만 코드를 생성하거나 분석하는데 있어 좀더 직관적으로 보일 수 있습니다.

코딩량도 많이 줄어 듭니다. 

private bool saveConfigData(string FileName)
{
	bool result = true ;

	try
	{
 		var jsonLIVParam = new JObject()
		{
			{"Start Current", 0},
			{"Stop Current", 100},
			{"Step Current", 0.1},
			{"Array", new JArray { 10, 20, 100 }}
		};

		var LIVObject = new JObject()
		{
			{"LIV Test", jsonLIVParam}
		};

		using (System.IO.StreamWriter file = new System.IO.StreamWriter(FileName, false))
		{
			file.WriteLine(LIVObject.ToString());
		}
	}
	catch
	{
		result = false ;
	}
    
	return result ;
}

private bool loadConfigData(string FileName)
{
    bool result = true ;
    int index = 0 ;

	try
	{
		string text = System.IO.File.ReadAllText(FileName);
		JObject jobj = JObject.Parse(text); //문자를 객체화

		var startCurrent = int.Parse(jobj["LIV Test"]["Start Current"].ToString()) ;
		var stopCurrent = int.Parse(jobj["LIV Test"]["Stop Current"].ToString()) ;
		var stopCurrent = float.Parse(jobj["LIV Test"]["Step Current"].ToString()) ;

		int[] arrayValue = new int[3] ;

		foreach(var elememts in jobj["LIV Test"]["Array"])
		{
			arrayValue[index++] = (int)elememts ;
		}
	}
	catch
	{
		result = false ;
	}
    
	return result ;
}
반응형

댓글()