본문 바로가기

키보드 매크로

정부 공공데이타 수집 매크로 제작 - JSON을 배열로 파싱 해주는 커스텀 모듈 만들기. (JSON Parser)

반응형

무료 매크로 프로그램 다운로드

http://ngmsoftware.com/bbs/board.php?bo_table=product1&wr_id=32 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#매크로 #매크로프로그램 #메크로 #g매크로 #마우스매크로 #키보드매크로 #엑셀매크로 #키매크로 #수강신청매크로 #로지텍마우스매크로 #매크로키보드 #파이썬매크로 #매크로뜻 #매크로마우스 #로지텍매크로 #ld플레이어매크로 #오토마우스매크로 #키보드마우스매크로 #오토핫키매크로 #이미지매크로 #이미지인식매크로 #하드웨어매크로 #화면인식매크로 #선착순구매매크로 #이미지서치매크로 #한글매크로

 

안녕하세요. 엔지엠소프트웨어입니다. 웹 API를 사용하거나 외부 API를 통해 데이타를 받으면 대부분 XML 또는 JSON입니다. 요즘은 JSON이 아닌 경우를 본적이 없을정도로 대세가 된듯 합니다. 불과 10년전만해도 XML로 되어 있었는데 말이죠^^; 아무튼, [ 스캔한 이미지에서 텍스트를 추출해서 엑셀로 정리 ]하는 예제를 만들다가 텍스트를 JSON으로 쉽게 변환할 수 있으면 좋겠다 싶어서 이 모듈을 만들게 되었습니다. JSON 모델은 아래와 같습니다.

{
  "locale": "ko",
  "description": "Macro 「거대한」이라는 의미를 나타내는 접두어로 「아주 작은」이란 뜻의 접두어 마이크로(Micro)와는 비교된다. 
                         예를 들어 Macrophysics(거시물리학)이 그것. 
                         경제학 에서는 Microeconomics, 즉 미시경제학과 반대되는 Macroeconomics, 즉 거시경제학의 용례가 있다. 
                         최근에는 매크로가 「전체」 마이크로가 「개별」이라는 의 미가 되어 
                         '매크로'는 GNP, '마이크로'는 기업의 대명사처럼 쓰이는 경우도 있다. ",
  "boundingPoly": {
    "vertices": [
      {
        "x": 6,
        "y": 17
      },
      {
        "x": 954,
        "y": 17
      },
      {
        "x": 954,
        "y": 125
      },
      {
        "x": 6,
        "y": 125
      }
    ]
  }
}
 

 

엔지엠 프레임워크에서 텍스트를 JSON 모델로 쉽게 파싱하도록 처리 해주기 때문에 코딩이 그렇게 어렵지는 않습니다. 전체 코드는 아래와 같습니다.

 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CustomNgmParserModule
{
    [Serializable]
    public class JsonParserModel : NGM.Models.Interface.BaseCustomToolModel
    { 
        /// <summary>
      /// 도구 상자에 표시될 카테고리 이름을 가져옵니다.
      /// </summary>
        public override string DisplayCategory => "NGMsoftware";

        /// <summary>
        /// 도구 상자에 표시될 액션 이름을 가져옵니다.
        /// </summary>
        public override string DisplayName => "텍스트 Json 변환";

        [Category("Data")]
        [DisplayName("아이템 키")]
        [Browsable(true)]
        [DefaultValue(null)]
        public string Key { get; set; }

        [Category("Data")]
        [DisplayName("아이템 값")]
        [Browsable(true)]
        [DefaultValue(null)]
        public string Value { get; set; }

        [Category("Data")]
        [DisplayName("아이템 키 목록")]
        [Browsable(true)]
        public List<string> Keys { get; set; } = new List<string>();

        [Category("Data")]
        [DisplayName("아이템 값 목록")]
        [Browsable(true)]
        public List<string> Values { get; set; } = new List<string>();

        [Category("Action")]
        [DisplayName("인덱스")]
        [Browsable(true)]
        [DefaultValue(0)]
        public int Index { get; set; }

        [Category("Action")]
        [DisplayName("텍스트")]
        [Browsable(true)]
        [DefaultValue(null)]
        public string Text { get; set; }

        public override void Execute()
        {
            if (Keys == null)
                Keys = new List<string>();

            if (Values == null)
                Values = new List<string>();

            Keys.Clear();
            Values.Clear();

            var manager = new NGM.Utility.ParserManager.Manager();
            var items = manager.TextToJson(Text);

            foreach (var item in items)
            {
                Keys.Add(item.Key);
                Values.Add(item.Value);
            }

            Key = Keys[Index];
            Value = Values[Index];
        }
    }
}
 

 

내용이 좀 많긴한데요. 커스텀 모듈 프로젝트를 컴파일한 후 엔지엠 에디터의 관리자 메뉴에서 도구 모음 설치로 첨부된 dll을 선택해주면 자동 설치 됩니다.

 

 

간단하게 JSON 텍스트를 넣고, 실행하면 키와 밸류가 쌍을 이루어 배열에 저장됩니다. 인덱스에 위치한 키와 밸류를 가져올 수 있습니다.

 

 

[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]

 

원본 글 보기

http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#비활성매크로 #g102매크로 #철권매크로 #레이저마우스매크로 #ghub매크로 #녹화매크로 #키보드반복매크로 #로지텍마우스광클매크로 #플라스크매크로 #윈도우매크로 #비활성g매크로 #오토매크로 #자동사냥 #주식매크로 #오토핫키키보드 #오토핫키마우스 #오토핫키이미지 #지존오토 #기계식매크로 #하드웨어매크로 #무한반복매크로 #대량이메일발송매크로 #엑셀VBA매크로 #주식모니터링매크로

반응형