파일에 그룹화 된 키 값 쌍을 저장하는 가장 좋은 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1137270

  •  16-09-2019
  •  | 
  •  

문제

현재 나는 사전으로 수동으로 구문 분석하는 파일을 가지고 있습니다.

str1=Hello
str2=World

이것은 몇 가지 이유로 더 이상 실용적이지 않습니다.

  • 인덱스별로 액세스 할 수있는 문자열 목록이 필요합니다.
  • 키 값 쌍을 그룹으로 나누고 싶습니다.

나는 지금 XML을 사용하는 것을 고려합니다.

  • 핵심 가치 쌍 및 그룹에 좋습니다
  • 클래스를 사용하고 직렬화하여 철자 오류를 제거 할 수 있습니다.

그러나 (직렬화 된 클래스를 사용한다고 가정) :

  • 문서 구조를 매핑하려면 많은 새로운 클래스를 만들어야합니다.
  • 사전은 일반적으로 직렬화 될 수 없기 때문에 특별히 돌봐야합니다.

이 접근법을 추천합니까? 대신 xmldocument 클래스를 사용해야합니까? .NET 용 무료 라이브러리가있는 다른 형식이 있습니까?

응용 프로그램을 현지화하기 위해 이것을 사용하고 싶습니다.

도움이 되었습니까?

해결책

.NET은 매우 견고한 리소스 기반 지원을 제공합니다 현지화, 당신은 그것을 조사 할 수 있습니다.

자신의 리소스 스토리지 형식을 실제로 발명하려면 더 자세히 살펴 보는 것이 좋습니다. JSON 직렬화 형식 (처리 할 .NET 라이브러리가 많이 있음) 또는 Yaml (적절한 .NET 파서가 있는지 확실하지 않음)으로 : 둘 다 눈에 훨씬 간단합니다 (그무에 따르면).

다른 팁

CSV 파일 좋고 컴팩트 할 것입니다.

xmldocument

절대적으로 필요하지 않는 한 xmldocument를 사용하지 마십시오. XML을 읽지 않도록 최적화되어 있습니다. http://www.mattberther.com/2004/06/16/xmldocument-vs-xpathnavigator/xmlreader 또는 xpathnavigator를 사용하십시오. 수업을 읽고 있다면 xmlserializer로 직접 직렬화를 고려하십시오.

XML 대 플랫 파일

객체의 계층 구조를 만드는 경우 XML 만 사용하십시오. 귀하의 설명에서 텍스트 파일을 읽는 간단한 라인으로 충분합니다. 그런 다음 "="의 첫 번째 발생시 분리하여 사전, 목록 또는 일부 사용자 정의 구조로 읽을 수 있습니다. XML보다 빠르고 유지 관리가 더 쉽습니다.

철자

XML이 철자 오류에 도움이되지 않는다고 생각합니다.

현지화

리소스 파일을 사용하여 수행해야합니다. http://www.codeproject.com/kb/dotnet/localization.aspx 또는 그렇게 https://stackoverflow.com/questions/tagged/localization+.net

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top