2011-04-28 2 views
0

레코드 형식의 파일을 만들고 싶습니다.길이에 따라 속성 값의 형식을 지정하는 방법은 무엇입니까?

예 : 출력 파일 :

 SD raj  ,kumar  ,27/04/2011 
     DD male ,single   ,27/04/2011 
     ED 27/04/2011 

RecordName Fieldname FieldLength 

SD    FirstName   10 
SD   LastName   10 
SD   date    15 
DD   Sex     6 
DD   maritalstatus  15 
DD   date    15 
ED   date 

입력 파일 Record.txt

이 그 내용이다

raj,kumar,27/04/2011 
    male,single,27/04/2011 
    27/04/2011 

I이 입력 파일을 판독하고, 다음 클래스의 오브젝트에 데이터를 채우는를 Input.txt이다. 쉼표는 레코드의 필드 값을 구분하는 데 사용되는 구분 기호입니다.

class SD 
    { 

      private string fName; 
      private string lName; 
      private DateTime date; 


      #region Properties 
      public string FName 
      { 
      get { return fName;} 
      set { fName= value; } 
      } 
      public DateTime Date 
      { 
      get { return date; } 
        set { date = value; } 
      } 
      public string LName 
      { 
      get { return lName;} 
      set { lName= value; } 
      } 
      #endregion 
    } 



    class DD 
    { 

      private string sex; 
     private string mStatus; 
     private DateTime date; 


     #region Properties 
     public string SEX 
     { 
      get { return sex;} 
      set { sex= value; } 
      } 
      public string Date 
      { 
       get { return date; } 
       set { date = value; } 
     } 
     public string Mstatus 
      { 
      get { return mStatus;} 
        set { mStatus= value; } 
     } 
     #endregion 
    } 

    class ED 
    { 

     private DateTime date; 


      #region Properties 

      public string Date 
      { 
       get { return date; } 
      set { date = value; } 
      }  
      #endregion 
    } 

는 또한

Sample.xml이

<Data> 
     <SD Fname="10" Lname="10" Date="15/> 
     <DD SEX="6" mStatus="15" Date="15/> 
     <ED Date="15/> 
    <Data/> 

지금 누군가가 나에게 내가 필드를 포맷 할 수있는 방법을 알 수 있습니다 각 레코드의 필드 길이를 얻을 수있는 XML을 만들었습니다?

1.after 분야를 식별 할 sample.xml을 사용 (반드시 입력 텍스트를 읽고

나에게 적절한 솔루션을 말해 출력 파일에 쓰기 해당 클래스 객체

2.before으로 채 웁니다 길이)

+0

어떤 답변을 해주시겠습니까? –

답변

0

정확한 질문을 이해하면 고정 된 필드 너비로 데이터를 출력하는 방법이 궁금합니다. 그래서 그냥 패드에이 같은 문자열 함수를 만들 수있는 경우 :

string GetFixedLengthString(string value, int length) 
    { 
     return (value ?? "").Length > length ? (value ?? "").Substring(0, length) : (value ?? "").PadRight(length); 
    } 

을 그리고 전화는 값을 쓸 때. Sample.xml의 두 번째 요소가 SD가 아닌 ED 여야한다고 생각 하시나요? XmlDocument로로드하고 특성을 읽는 것은 충분히 간단해야하며 특성 값을 길이 매개 변수로 함수에 전달해야합니다.

관련 문제