프로젝트 내 텍스트 영역의 초기 값으로 내용을 포함하고 싶은 70 줄 텍스트 파일이 있습니다. 이를 수행하는 가장 좋은 방법은 무엇입니까? 일반적으로 사용 readFile
하지만이 컨텍스트에서 사용할 수없는 것 같습니다.
Template Haskell을 사용하여 컴파일 타임에 파일을로드하고 그 내용을 최상위 정의에 저장할 수 있습니다. Hackage 의 file-embed
패키지 는 다음 기능을 구현합니다.
이 모듈은 Template Haskell을 사용합니다. 다음은 Template Haskell 함수 호출에 익숙하지 않은 사용자를위한 간단한 사용법입니다.
embedFile
이 모듈 의 함수 는 런타임에 사용할 수있는 실행 파일에 파일을 포함합니다. 파일은ByteString
. 그러나 아래에서 볼 수 있듯이 유형 서명은 유형 값Q Exp
이 반환 됨을 나타냅니다 . 이것을으로 변환ByteString
하려면 템플릿 Haskell 구문을 사용해야합니다. 예 :$(embedFile "myfile.txt")
이 표현식에는 유형이
ByteString
있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다