계속해서 추가되는 XML 파일이 있습니다. XML에서 데이터를 반복해서 읽어야하지만, 각 패스에서 이전 실행에서 처리 한 데이터를 검색하고 싶지 않습니다.지정된 시작 위치에서 XML 파일 읽기
파일 처리 시간을 알고 있기 때문에 파일의 길이 (종료/연락처 태그 빼기)를 사용하여 마지막으로 중단 된 부분을 확인할 수 있습니다. 이걸 알면 파일 내의 특정 바이트 위치에서 시작하는 모든 Contact 태그를 검색하는 가장 좋은 방법은 무엇입니까?
<?xml version="1.0"?>
<Contacts>
<Contact>
<Name>Todd</Name>
<Email>[email protected]</Email>
</Contact>
<Contact>
<Name>Sarah</Name>
<Email>[email protected]</Email>
</Contact>
</Contacts>
이 코드 블록은 모든 연락처를 가져옵니다. 그것은 단지 (바이트 116에서) 첫 접촉 이후에 데이터를 집어 들고, 그래서 나는
var xdoc = XDocument.Load(PATH_TO_FILE);
var contact = xdoc.Descendants("Contact").Select(x => (string)x).ToArray();
호기심에서 벗어났습니다. 왜 데이터베이스를 사용하지 않으시겠습니까? –
XML은 변경할 수없는 공급 업체 제품의 출력물입니다. 요청은 이러한 XML 파일을 파싱 한 후 실시간으로 데이터를 처리하는 실시간에 가까운 방법을 생성하는 것입니다. – Rethic