나는 제어 할 수없는 다른 응용 프로그램에서 생성 된 두 개의 XML 파일을 가지고 있습니다. 첫 번째 파일은 설정 파일이며 두 번째 파일은 첫 번째 파일에 적용해야하는 변경 사항 목록입니다.XML 파일을 변경 목록과 병합
기본 설정 파일 : 여기
<?xml version="1.0"?>
<preset>
<var id="9" opt="0" val="6666666"/>
<var id="9" opt="1" val="10000000"/>
<var id="9" opt="2" val="10000000"/>
<var id="9" opt="3" val="10000000"/>
<var id="9" opt="4" val="0"/>
<var id="10" opt="0" val="4"/>
<var id="11" opt="0" val="0"/>
<var id="15" opt="0" val="75"/>
<var id="22" opt="0" val="0,0,127,516" type="rect(l,t,r,b)"/>
<var id="23" opt="0" val="27,18,92,66" type="rect(l,t,r,b)"/>
<var id="24" opt="0" val="320"/>
... Skip 300 lines ...
</preset>
그리고
변경 사항의 예는 다음과 같습니다<?xml version="1.0"?>
<preset>
<var id="15" opt="0" val="425"/>
<var id="22" opt="0" val="0,0,127,776" type="rect(l,t,r,b)"/>
<var id="26" opt="0" val="147"/>
<var id="27" opt="0" val="147"/>
<var id="109" opt="1" val="7"/>
<var id="126" opt="0" val="6,85,85,59" type="crv(t,m,b,vm)"/>
<var id="157" opt="0" val="1"/>
... Skip 10 lines ...
</preset>
각 변수는 ID와 ID가 적용되는 최적화가 있습니다. 기본적으로, 나는 id="#"
과 opt="#"
이 같은 줄을 "변경"파일의 버전으로 바꾸려고합니다. 위의 예에서 id="15" opt="0"
의 값은 75에서 425로 변경됩니다.
C#에서이 작업을 수행 할 때 명확한 방법이 있습니까? 처음에는 텍스트로 읽기와 바꾸기 유형을 사용하여 변경 사항을 단계별로 처리하는 것이 가장 깨끗한 것으로 보입니다. XmlDocument
으로 처리하는 방법은 훨씬 더 많은 작업처럼 보입니다.
이것은 일회성 일입니까, 아니면 정기적으로해야 할 일입니까? – Josh
정기적으로. 기본적으로 사용자는 SDK가 자동으로 생성 한 변경 사항을 저장하고이를 원래 설정과 병합합니다. –