형태소를 분석한 이후에 역파일 테이블에는 해당 형태소를 포함하는 페이지 주소와 참조 카운터를 멤버로 하는 역파일 요소가 필요합니다. 이 부분도 파일 입출력이 가능하게 직렬화 가능한 형식으로 정의합시다.
[Serializable] public class InvElem { }
멤버 속성으로 페이지 주소와 참조 개수를 제공합니다. 특히 참조 개수는 사용하는 곳에서 설정할 수 있게 set도 public 접근 지정합니다. 생성자에서는 페이지 주소와 참조 개수를 입력받아 속성을 설정합니다.
public string Link { get; private set; } public int RefCount { get; set; } public InvElem(string link,int refcount) { Link = link; RefCount = refcount; }
ToString 메서드를 재정의하여 페이지 주소와 참조 개수의 조합을 반환합니다.
public override string ToString() { return string.Format("{0}:{1}", Link, RefCount); }
▷ InvElem.cs
using System; namespace RSSBrowserLib { /// <summary> /// 역파일 요소 /// </summary> [Serializable] public class InvElem { /// <summary> /// 주소 /// </summary> public string Link { get; private set; } /// <summary> /// 참조개수 /// </summary> public int RefCount { get; set; } /// <summary> /// 생성자 /// </summary> /// <param name="link">주소</param> /// <param name="refcount">참조개수</param> public InvElem(string link,int refcount) { Link = link; RefCount = refcount; } /// <summary> /// ToString 재정의 /// </summary> /// <returns>주소:참조개수</returns> public override string ToString() { return string.Format("{0}:{1}", Link, RefCount); } } }