Konvertiert eine Excel-Datei in eine Textdatei. Der Zweck ist es, sich mit cli zu unterscheiden.
Sie müssen nicht in der Lage sein, Excel-Inhalte aus einer Textdatei für verschiedene Zwecke wiederherzustellen. Wenn Sie CSV verwenden, ist es sehr schwierig, den Unterschied in der Befehlszeile zu erkennen, auch wenn eine Zeile lang wird und sich unterscheidet. Daher möchte ich für jede Zelle eine Zeile erstellen.
Ich konnte kein Werkzeug finden, das praktisch schien, und es war schneller, ein Skript zu schreiben, also schrieb ich es.
Verwenden Sie in Python eine Bibliothek namens openpyxl.
$ pip install openpyxl
Dies ist der einzige Quellcode.
import sys
import openpyxl
filepath = sys.argv[1]
sheetname = ""
if len(sys.argv) > 2:
sheetname = sys.argv[2]
wb = openpyxl.load_workbook(filepath)
for ws in wb:
if sheetname != "" and ws.title != sheetname:
continue
print(f"sheet:{ws.title}")
for row in ws:
print(" row")
for cell in row:
if cell.value == None:
print("")
else:
print(f" {cell.value}")
Wenn Sie es unter einem Namen wie "xls2txt.py" speichern, wird der Inhalt aller in der Excel-Datei enthaltenen Blätter als Text unten ausgegeben.
$ python xls2txt.py foo.xls
Wenn Sie nur ein bestimmtes Blatt anzeigen möchten, geben Sie den Blattnamen an.
$ python xls2txt.py foo.xls Sheet1
Um den Unterschied zu sehen, sieht es zum Beispiel so aus:
$ diff -U5 <(python xls2txt.py foo.xls Sheet1) <(python xls2txt.py bar.xls Sheet1) | less
Sehen Sie hier, ob Sie den Unterschied im Diff leichter erkennen möchten. So zeigen Sie den Befehl diff in Farbe an, um die Anzeige zu erleichtern
Recommended Posts