Q&A

  • 텍스트파일이 UNIX포맷인지 DOS포맷인지 구분하는 방법 좀 갈켜주세요...
안녕하세요 저는 델파이 초보잔데요.
어디서 텍스트파일이 UNIX파일이면 DOS파일로 변환해 주는 코드를 분석중인데 그 소스에서 UNIX파일인지 DOS파일인지 구분하는 방법이 애매모호해서 소스일부분을 올립니다. 설명 좀 해 주세요...


iStrin := 변환할 파일경로;
AssignFile(Tfile, iStrin);
Reset(Tfile);
      While Not EOF(Tfile) do
        begin
          Readln(Tfile, One_Line);
          iCount := iCount +1;
        end;

    (* Unix형화일이면 Dos형으로 : LF -> CRLF *)
    if pos(#10, One_Line) > 0 then  //이 부분이 애매합니다. 왜 이렇게 되는
                                                // 지 갈켜주세요...
      begin
          convertUnixToDos; //유닉스파일을 도스파일로 변환하는 프로시져.
      end;
3  COMMENTS
  • Profile
    김기수 2002.04.25 17:50
    #10은 LF를 뜻하구요, LF만으로는 라인의 분리가 되지 않기 때문에 CR을 추가한다는 얘기군요.
  • Profile
    임성익 2002.04.25 20:02


    답변 고맙습니다.
    근데요, 제가 알고 싶은 건, UNIX화일과 DOS화일 전부 에디터로 열어서 헥사값을 보면 LF문자가 다 들어 있거든요. 어떻게 LF문자의 유무로 UNIX화일과 DOS화일을 구분할 수 있는 건지를 모르겠습니다. 그 부분에 대해서 좀 자세한 설명을 부탁드리겠습니다.
  • Profile
    김기수 2002.04.26 02:30
    OS의 특성이라고 해야 할까요?
    LF문자로 구분하는것은 일종의 편법이랄수 있겠죠.
    UNIX에서만 쓰이는 방법이 아니니까요.
    도스문서와 유닉스문서의 차이를 찾다보니 그런방법을 쓴것뿐이지
    특별한 이유는 없다고 봅니다.
    참고로 맥킨토시에서 만든 텍스트 문서도 LF만 들어가 있습니다.