Jämförelseexempel - Strukturell jämförelse för nyckel/värde-par
Introduktion
I det här exemplet visas hur du kan hantera strukturell jämförelse för filer som består av nyckel/värde-par. Det visar hur du kan implementera och registrera en anpassad strukturskapare som tolkar nyckel/värde-par till en trädstruktur som används som indata till det strukturella jämförelseramverket som finns i insticksprogrammet Compare. Dessutom registreras en standardtextvisning för de enskilda nyckel/värde-paren.
Det här exemplet är bara avsett som demonstration. Strukturell jämförelsefunktion för Java-egenskapsfiler (ett annat nyckel/värde-format) finns i Eclipse Java-verktygsuppsättningen.
Köra exemplet
- Skapa ett projekt (inte nödvändigtvis ett Java-projekt)
- Skapa en fil med nyckel/värde-par (f1.kv)
- Öppna Fönster > Inställningar > Arbetsmiljö > Filassociation och associera standardtextredigeraren med filtillägget "kv".
- Öppna f1.kv med redigeraren och ange detta innehåll
efternamn=Svensson
förnamn=Jan
stad=Stockholm
landskap=Uppland
- Ta en kopia av filen och döp om den till f2.kv.
- Öppna f2.kv och ändra förnamnet "Jan" till "Maria".
- Lägg till annat nyckel/värde-par "land=Sverige" i f2.kv.
- Markera båda filerna f1.kv och f2.kv.
- På kontextmenyn väljer du Jämför med > Varandra
- En ny jämförelseredigare öppnas som visar den strukturella skillnaderna för båda filerna i den övre rutan. Om du markerar en av egenskaperna "förnamn" eller "land" matas texten från motsvarande nyckel/värde-par in i jämförelsevisningen av standardtext i den nedre rutan.
Kodordning i exemplet
Exempelkoden ordnas i ett enda paket org.eclipse.compare.examples.structurecreator:
- KeyValuePairStructureCreator
är den strukturskapare som tolkar innehållet i en ström in i ett träd av IStructureComparatorer.
- TextMergeViewerCreator
är en fabrik för TextMergeViewers. Den är registrerad för typen "kvtxt", vilket är typen för ett enskilt nyckel/värde-par.
- Util
ger verktyg för NLS-support och för att läsa en InputStream som en String.