2010-05-25 5 views
5

이맥스 lisp은 날짜와 시간을 처리하는 데 적합하다고 이해하지만 %Y, %m, %d, %H, %M, %S,과 같은 형식을 사용하여 문자열을 정수의 내부 표현으로 변환하는 기능이 있습니까? 또한 이맥스 참조 설명서에서 시간은 2 ~ 3 개의 정수 목록이지만보다 공식적인 사양이나 설명이 있습니까? ~ 감사합니다 ~이맥스 Lisp의 날짜와 시간

편집 : 응답을 주셔서 감사합니다 -하지만 반대로 형식으로 시간 문자열을하는 기능이 있다면 궁금 해서요 생각 (같은 parse-time-string하지만 입력 문자열에 대한 구조 사양)?

편집 2 : 대답은 아무것도 없다는 것입니다.하지만 부분 구현은 here으로 구현되었습니다.

+0

방금 ​​strptime.el을 시도했지만 파일에서 주어진 "수동 테스트"예제에서는 작동하지 않습니다. 분명히 replace-in-string은 더 이상 이맥에 있지 않습니다. 너무 나쁜, 나는 동일한 기능을 찾고있다. – Liam

+0

별칭'(defalias 'replace-in-string'replace-regex-in-string)'을 생성하면 작동합니까? – hatmatrix

답변

2

대부분의 시간 관련 함수에서 세 개의 정수 목록으로 시간이 반환됩니다. 첫 번째는 초의 최상위 16 비트를 가지며 두 번째는 최하위 16 비트를 갖습니다. 세 번째 정수는 마이크로 초 카운트를 제공합니다.

초 단위보다 미세한 해상도 을 제공하지 않는 시스템에서는 마이크로 초 수가 0입니다.

질문을 놓친 경우를 대비하여 나머지 질문은 this section을 참조하십시오.

2
(defun encode-time-string (string) 
    (apply #'encode-time (parse-time-string string))) 

내부 표현이 변경 될 수 있습니다. 필자는 문서화 된 API (encode-time, decode-time 등)를 사용하여 액세스하는 것이 더 좋을 것이라고 생각합니다.