파일에서 구성을 읽으려면 키 - 값 쌍이 필요합니다. 나는 Data.Map에서 show를 사용하여 시도해 보았고, 내가 원한 것처럼 보이지 않았다. 이것은 다른 많은 사람들이 이미했을지도 모르는 무언가 인 것 같습니다 그래서 표준 방법이 있고 라이브러리를 사용할 것인지 궁금합니다.하스켈에는 전형적인 설정 파일이나 프로퍼티 파일 형식과 라이브러리가 있습니까?
답변
- hackage으로 이동하십시오.
- "packages"을 클릭하십시오.
- "config"로 검색하십시오.
- 알림 ConfigFile (TH), EEConfig 및 tconfig입니다.
- Haddock 설명서 읽기
- 부부를 선택하고 작업을 구현하십시오.
- 결과에 대한 블로그이므로 나머지는 새로운 발견 전문 지식에서 배울 수 있습니다 (감사합니다!).
편집 : 최근에 configurator을 사용했습니다. 나는 당신이 그 하나를 시도하는 것이 좋습니다!
내가 또한 단지 Text.JSON
또는 사용할 수있는 YAML 라이브러리 중 하나를 사용하는 것이 좋습니다 것
"문서 읽기"- 저는 haskell을 배울 때 매우 어려운 것을 발견합니다. –
더 쉬워집니다. –
configfile package은 원하는 것처럼 보입니다.
(나는 내 자신의 충고를 따랐다 경우 네, 네. 난 당신이 모든 블로그를 만들었을 것입니다) (I은 JSON 자신을 좋아한다 그러나...).
Hackage의 구성 범주는 모든 관련 라이브러리를 나열해야합니다 : 지금 화제 나 자신을 연구 한 http://hackage.haskell.org/packages/#cat:Configuration
을, 나의 결론은 다음과 같습니다
- configurator은 매우 훌륭하지만 그것은 단지 현재의 사용자가 편집 한 구성. 응용 프로그램은 구성을 읽으며 수정할 수 없습니다. 따라서 서버 측 응용 프로그램에 더 적합합니다.
- tconfig는 AA 간단한 API를 가지고 있으며, 그것이 내가이 unmaintained의 실현 때까지 나는, 어쩌면 약간의 원료 원하는 것을 안쪽 앱을 사용하는 것이 정말 중요한 몇 가지 commits는 github에 적용되지만 hackage 패키지가 업데이트되지 않았 음을
다른 솔루션은 저에게 효과가있는 것처럼 보이지 않았습니다. API는 마음에 들지 않지만 모든 애플리케이션 (및 취향)은 다릅니다.
JSON을 사용하는 것은 좋은 해결책이 아닙니다. 적어도 Aeson을 사용하면 새 버전에 새 설정을 추가 할 때 이전 버전의 새 멤버가없는 이전 JSON이로드되지 않기 때문입니다. 또한, 나는 그 해결책을 약간 장황한 것으로 안다.
필자의 연구 결론은 필자 자신의 라이브러리 인 app-settings을 작성한 것으로, 가능한 한 숙신이없고 유형이 안전한 API로 키 - 값, 읽기 - 쓰기를 목표로합니다. 또한 필자가 제공 한 구성 범주에 대한 hackage 링크에서도 찾을 수 있습니다.
요약하면 configurator은 읽기 전용 구성의 표준입니다 (또한 매우 강력합니다. 예를 들어 가져 오기와 함께 구성 파일을 분할 할 수 있습니다). 읽기 - 쓰기에는 많은 작은 라이브러리가 있고 일부 라이브러리는 유지 보수되지 않았으며 실제 표준은 없다고 생각합니다.
- 1. 기존 파일 카탈로그 라이브러리가 있습니까?
- 2. 바운드 프로퍼티 클래스의 다른 프로퍼티 얻기
- 3. 스칼라에서 프로퍼티 처리하기
- 4. Hibernate XML 설정 파일에서 프로퍼티 표기법을 사용하는 방법
- 5. XML 파일 형식과 관련된 DSL에 XText를 사용할 수 있습니까?
- 6. 유니버설 오디오 파일 디코딩을위한 .NET 라이브러리가 있습니까?
- 7. struct - C의 프로퍼티 루핑하기
- 8. delphi 7 Items 프로퍼티
- 9. 개발자 및 프로덕션을위한 프로퍼티
- 10. setter로 파이썬 커스텀 프로퍼티
- 11. 전기 회로도를 그릴 수있는 Javascript 라이브러리가 있습니까?
- 12. 파일 시스템에 파일이나 이미지를 저장하는 방법은 무엇입니까?
- 13. 전형적인 ant 빌드 파일에는 어떤 기본 타겟이 있습니까?
- 14. 일치하는 여러 개의 파일으로 fnmatch와 확장() 전형적인 파일 일치하는 코드에서
- 15. Perl의 형식과 유사한 기능 및/또는 라이브러리가있는 다른 언어는 있습니까?
- 16. RDF 형식과 RSS의 인기도
- 17. nullable 형식과 경고 ReSharper에서
- 18. MethodInvokingFactoryBean을 사용하여 비 전형적인 빈을 설정하십시오.
- 19. ePub에 대한 라이브러리가 있습니까
- 20. C++ SOLR 라이브러리가 있습니까?
- 21. VBScript 라이브러리가 있습니까?
- 22. 음성 인증 라이브러리가 있습니까?
- 23. 좋은 Gtk 라이브러리가 있습니까?
- 24. .NET FastCGI 라이브러리가 있습니까?
- 25. C++ XSLT 라이브러리가 있습니까?
- 26. 메이크 파일이나 헤더 파일에 간단한 문제가 있습니까?
- 27. ubercart 파일 다운로드 설정 문제
- 28. 웹 응용 프로그램에서 Hibernate 객체의 전형적인 수명주기 -?
- 29. 대리자 형식과 메서드 사용
- 30. 날짜 형식과 관련된 질문
taotree : 질문자에게 편집자에 대한 정보가있는 지 확신 할 수 없으므로 ... "최근에 컨 피규 레이터를 사용했는데 쉽게 할 수있었습니다. 시도해 보시기 바랍니다!" 정말 간단하고 완전한 기능입니다. –