Dateivergleich (Data Management)

Zusammenfassung

Vergleicht zwei Dateien und gibt die Vergleichsergebnisse zurück.

Verwendung

  • Mit diesem Werkzeug werden Meldungen mit den Vergleichsergebnissen zurückgegeben. Standardmäßig wird das Werkzeug angehalten, sobald es den ersten Unterschied zwischen den Eingaben feststellt. Sollen alle Abweichungen in den Bericht aufgenommen werden, aktivieren Sie den Parameter Vergleich fortsetzen.

  • Wenn die Unterschiede im Bericht zwischen den Eingabe-Datasets auf das Hinzufügen oder Löschen von Datensätzen zurückzuführen sind, ist nur der erste berichtete Unterschied gültig. Alle Unterschiede im Bericht, die nach dem Hinzufügen oder Löschen aufgeführt werden, sind darauf zurückzuführen, dass der Vergleich nicht der Sequenz der vorgesehenen Reihenfolge entspricht. Die Vergleichswerkzeuge versuchen nicht, den nächsten Satz übereinstimmender Datensätze zu finden, nachdem ein hinzugefügter oder gelöschter Datensatz gefunden wurde.

  • Mit diesem Werkzeug können die Unterschiede zwischen zwei ASCII-Dateien oder zwei Binärdateien in einem Bericht ausgegeben werden.

  • Dieses Werkzeug unterstützt die Maskierung von Zeichen, Wörtern und Textzeilen in einer ASCII-Datei. So sind die zwei Dateien beispielsweise möglicherweise identisch bis auf die Tatsache, dass sie Text mit dem Datum und der Uhrzeit der Erstellung enthalten. Dieser Unterschied würde zu einem Übereinstimmungsfehler führen. Außerdem treten kleine Abweichungen auf, die darauf beruhen, dass bei den verschiedenen Plattformen Zahlen unterschiedlich gespeichert oder bearbeitet werden. Dies führt zwischen den Plattformen zu Abweichungen bei der Zahlengenauigkeit. Für den Umgang mit falschen Zeichenvergleichen bietet dieses Werkzeug verschiedene Maskierungsfunktionen. Bearbeiten Sie vor dem Vergleich neuer Textdateien mit vorhandenen Basisdateien die Basisdateien, um diese Maskierungssymbole hinzuzufügen.

    • "#": An allen Stellen, an denen in der Eingabe-Basisdatei das Symbol "#" erscheint, wird das dazugehörige Zeichen in der Eingabe-Testdatei ignoriert.
      Base: Y delta = 9048.6#
      Test: Y delta = 9048.61
    • "??": Zur Maskierung eines vollständigen Wortes fügen Sie am Wortanfang "??" hinzu.
      Base: Processing ??ESRI1/ARCIGDS/TESTRUN/CONV/ARCIGDS/CPXSHAPE.DGN
      Test: Processing ESRI2/ARCIGDS/TESTRUN/CONV/ARCIGDS/CPXSHAPE2.DGN
    • "?!": In ein einzelnes Token ist möglicherweise ein Punkt (".") eingebettet. Bei einer Datei mit der Erweiterung "streetnames.dbf" möchten Sie beispielsweise unter Umständen vielleicht, dass ein Teil des Namens, entweder vor oder nach dem Punkt (.), beim Vergleich des Tokens ignoriert werden soll.
      Base: Master table is: streetnames?!.dbf
      Test: Master table is: streetnames
    • "???": Nach den Fragezeichen ("???") wird die gesamte nachfolgende Zeile maskiert.
      Base: ???       8       4       1       0      14      10
      Test:        12      8      2       1      16     12
  • ASCII ist der Standarddateityp. Ändern Sie bei der Eingabe von Binärdateien den Parameter Dateityp in Binär.

  • Bei einem Übereinstimmungsfehler zwischen ASCII-Dateien meldet das Werkzeug die Unterschiede, z. B. die Gesamtzahl der abweichenden Zeichen und die Abweichungen für jede Zeile.

  • Bei einem Übereinstimmungsfehler zwischen Binärdateien meldet das Werkzeug, dass die Dateigrößen unterschiedlich sind, und führt die Abweichungen für die einzelnen Byte auf.

  • Der Parameterwert Ausgabe-Vergleichsdatei enthält alle Ähnlichkeiten und Unterschiede zwischen den Parametern Eingabe-Basisdatei und Eingabe-Testdatei. Diese Datei ist eine kommagetrennte Textdatei, die in ArcGIS als Tabelle angezeigt und verwendet werden kann.

  • Bei Verwendung des Werkzeuges in Python können Sie den Vergleichsstatus aus dem zurückgegebenen Objekt Result unter Verwendung der Indexposition 1 abrufen.(result[1]). Der Wert lautet 'true', wenn keine Unterschiede gefunden werden, und 'false', wenn Unterschiede festgestellt werden.

    Weitere Informationen zum Verwenden von Werkzeugen in Python

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Basisdatei

Die Datei, die mit dem Parameterwert Eingabe-Testdatei verglichen wird. Bei diesem Parameterwert handelt es sich um eine Datei, die Sie als gültig deklariert haben. Die Basisdatei verfügt über den richtigen Inhalt und die richtigen Informationen.

File
Eingabe-Testdatei

Die Datei, die mit dem Parameterwert Eingabe-Basisdatei verglichen wird. Bei diesem Parameterwert handelt es sich um eine Datei, an denen Sie durch Bearbeiten oder Kompilieren neuer Informationen Änderungen vorgenommen haben.

File
Dateityp
(optional)

Gibt den Vergleichstyp an, der für die Dateien verwendet werden soll.

  • ASCIIDie Dateien werden anhand von ASCII-Zeichen verglichen. Dies ist die Standardeinstellung.
  • BinärFür die Dateien wird ein Binärvergleich durchgeführt.
String
Vergleich fortsetzen
(optional)

Gibt an, ob der Vergleich fortgesetzt wird, nachdem der erste Unterschied zwischen den Eingaben festgestellt wurde.

  • Deaktiviert: Das Werkzeug hält an, sobald der erste Unterschied gefunden wurde. Dies ist die Standardeinstellung.
  • Aktiviert: Die Ausführung des Werkzeugs wird fortgesetzt, nachdem der erste Unterschied gefunden wurde.

Boolean
Ausgabe-Vergleichsdatei
(optional)

Die Ausgabedatei, die alle Ähnlichkeiten und Unterschiede zwischen den Eingaben enthält. Diese Datei ist eine kommagetrennte Textdatei, die in ArcGIS als Tabelle angezeigt und verwendet werden kann.

Die Ausgabedatei, die alle Ähnlichkeiten und Unterschiede zwischen den Eingaben enthält. Diese Datei ist eine kommagetrennte Textdatei, die in ArcGIS als Tabelle angezeigt und verwendet werden kann.

File

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Vergleichsstatus

Der Vergleichsstatus lautet 'true', wenn keine Unterschiede gefunden werden, und 'false', wenn Unterschiede festgestellt werden.

Boolean

arcpy.management.FileCompare(in_base_file, in_test_file, {file_type}, {continue_compare}, {out_compare_file})
NameErläuterungDatentyp
in_base_file

Die Datei, die mit dem Parameterwert in_test_file verglichen wird. Bei diesem Parameterwert handelt es sich um eine Datei, die Sie als gültig deklariert haben. Die Basisdatei verfügt über den richtigen Inhalt und die richtigen Informationen.

File
in_test_file

Die Datei, die mit dem Parameterwert in_base_file verglichen wird. Bei diesem Parameterwert handelt es sich um eine Datei, an denen Sie durch Bearbeiten oder Kompilieren neuer Informationen Änderungen vorgenommen haben.

File
file_type
(optional)

Gibt den Vergleichstyp an, der für die Dateien verwendet werden soll.

  • ASCIIDie Dateien werden anhand von ASCII-Zeichen verglichen. Dies ist die Standardeinstellung.
  • BINARYFür die Dateien wird ein Binärvergleich durchgeführt.
String
continue_compare
(optional)

Gibt an, ob der Vergleich fortgesetzt wird, nachdem der erste Unterschied zwischen den Eingaben festgestellt wurde.

  • NO_CONTINUE_COMPAREDas Werkzeug hält an, sobald der erste Unterschied gefunden wurde. Dies ist die Standardeinstellung.
  • CONTINUE_COMPAREDie Ausführung des Werkzeugs wird fortgesetzt, nachdem der erste Unterschied gefunden wurde.
Boolean
out_compare_file
(optional)

Die Ausgabedatei, die alle Ähnlichkeiten und Unterschiede zwischen den Eingaben enthält. Diese Datei ist eine kommagetrennte Textdatei, die in ArcGIS als Tabelle angezeigt und verwendet werden kann.

File

Abgeleitete Ausgabe

NameErläuterungDatentyp
compare_status

Der Vergleichsstatus lautet 'true', wenn keine Unterschiede gefunden werden, und 'false', wenn Unterschiede festgestellt werden.

Boolean

Codebeispiel

FileCompare: Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion FileCompare im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.management.FileCompare(
    r'C:/Workspace/well_xycoordinates.txt', 
    r'C:/Workspace/new_well_coordinates.txt', 'ASCII', 'CONTINUE_COMPARE', 
    r'C:/Workspace/well_file_compare.txt')
FileCompare: Beispiel 2 (eigenständiges Skript)

Das folgende Beispiel veranschaulicht, wie die Funktion FileCompare in einem eigenständigen Skript verwendet wird.

# Name: FileCompare.py
# Description: Compare two text files and return comparison result.

# Import system modules 
import arcpy

# Set local variables
base_file= "C:/Workspace/well_xycoordinates.txt"
test_file= "C:/Workspace/new_well_coordinates.txt"
file_type = "ASCII"
continue_compare = "CONTINUE_COMPARE"
compare_file = "C:/Workspace/well_file_compare.txt"

# Process: FeatureCompare
compare_result = arcpy.management.FileCompare(base_file, test_features, 
                                              file_type, continue_compare, 
                                              compare_file)
print(compare_result)
print(arcpy.GetMessages())

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen