2010-03-06 5 views
1

나는 함께 일해야만하는 Portable Bridge Notationformatted-file을 가지고 있습니다. 인덱스와 하위 문자열을 사용하여 몇 가지 간단한 예제를 사용하여 필요한 항목을 추출했습니다.이 PBN 비즈니스에 대해서는 너무 자주 실행되지 않기 때문에 잘 될 것입니다. 만약 내가 다른 한 손으로 모든 시간 (vCards와 함께 일하는 생각)처럼 코드를 실행한다면 나는 모든 하위 문자열과 분할에서 생성 된 임시 문자열 변수가 너무 많아서 높은 워크로드에서 메모리 사용에 대해 걱정하고 있습니다.문자열 데이터를 추출하기위한 가장 좋은 옵션은 무엇입니까?

내가 아는 다른 두 가지 옵션이 있습니다. Regex 및 StringReader/TextReader와 나는 무엇을 사용해야하는지에 대한 일반적인 견해를 원했다.

의도 된 사용법은 개체에 추출하여 json으로 serialize하여이 정보를보다 쉽게 ​​처리하거나 유지할 수 있도록하는 것입니다. 지옥이 충분히 빠르면 비행 중에도 할 수 있습니다.

나를 때리면 무엇을 선택하겠습니까?

답변

0

개인적으로 파일을 한 줄씩 읽고 내부 표현으로 저장 한 다음 LINQ를 사용하여 쿼리합니다.

내부 표현에 저장하는 장점은 파일을 위에서 아래로 읽는 것만 큼 쉽습니다. 그리고 당신이 질의를해야 할 때, 당신은 삶을 훨씬 쉽게 만들어주는 강력한 linq 질의를 가지고 있습니다.

+0

이제 우리는 어딘가에 있습니다. 나는 그것을 밖으로 시도 할 것이다. – mhenrixon

+0

다른 사람이 코드에서 작업해야 할 경우에 대비하여 조금 더 명확한 쿼리를 수행한다는 것을 인정해야하지만 실제로는 아무 것도 해결하지 못합니다. 나는이 문제에 관해서 실제로 같은 양의 문서를 필요로하지 않는다. – mhenrixon

+0

.NET 4.0 .ReadLines는 행의 IEnumerable 을 반환합니다. where 절은 실제로 StartsWith, EndsWith, Contains 등과 특별히 조합됩니다. – mhenrixon

관련 문제