mirror of
https://github.com/FAUSheppy/ths-datenlogger
synced 2025-12-09 05:08:32 +01:00
Added support for .txt
This commit is contained in:
committed by
atlantispc_sheppy
parent
a4a259fefc
commit
ab24cb843f
@@ -246,7 +246,7 @@ def open_file():
|
|||||||
return f
|
return f
|
||||||
|
|
||||||
path=None
|
path=None
|
||||||
path=tkinter.filedialog.askopenfilename(filetypes=(("DBF/XLS Files",("*.DBF","*.dbf","*.xls","*.XLS")),("All Files","*.*")))
|
path=tkinter.filedialog.askopenfilename(filetypes=(("DBF/XLS Files",("*.DBF","*.dbf","*.xls","*.XLS","*.txt","*.TXT")),("All Files","*.*")))
|
||||||
if path == None or path=="":
|
if path == None or path=="":
|
||||||
print("Error: No file selected!")
|
print("Error: No file selected!")
|
||||||
return None
|
return None
|
||||||
|
|||||||
@@ -103,6 +103,8 @@ def read_in_file(path,backend=None):
|
|||||||
dbfread(path,datapoints,pt,ph,pd)
|
dbfread(path,datapoints,pt,ph,pd)
|
||||||
elif path.endswith(".xls") or path.endswith(".XLS"):
|
elif path.endswith(".xls") or path.endswith(".XLS"):
|
||||||
csvread(path,datapoints,pt,ph,pd)
|
csvread(path,datapoints,pt,ph,pd)
|
||||||
|
elif path.endswith(".txt"):
|
||||||
|
csvread_txt(path,datapoints,pt,ph,pd)
|
||||||
else:
|
else:
|
||||||
raise NotImplementedError("Cannot determine filetype, cannot continue. Exit.")
|
raise NotImplementedError("Cannot determine filetype, cannot continue. Exit.")
|
||||||
|
|
||||||
@@ -131,6 +133,25 @@ def csvread(path,datapoints,pt,ph,pd):
|
|||||||
plot_timeutils.time_from_csv,timeformat="%d-%m-%Y%H:%M:%S")
|
plot_timeutils.time_from_csv,timeformat="%d-%m-%Y%H:%M:%S")
|
||||||
print("Info: Ignored %d lines at beginning of file"%count)
|
print("Info: Ignored %d lines at beginning of file"%count)
|
||||||
|
|
||||||
|
def csvread_txt(path,datapoints,pt,ph,pd):
|
||||||
|
count = 0;
|
||||||
|
with open(path) as f:
|
||||||
|
for l in f:
|
||||||
|
if any(s in l for s in ["Logger","Datenquelle","Sensortyp","Einheit","Daten"]):
|
||||||
|
count += 1
|
||||||
|
continue
|
||||||
|
else:
|
||||||
|
row_arg = list(map(lambda s:s.replace(" ","").replace(",","."),l.split("\t")))
|
||||||
|
row = {"temp":None,"hum":None,"taupunkt":None,"datetime":None}
|
||||||
|
row["datetime"] = "%s-%s-%s_%s:%s"%(row_arg[0],row_arg[1],row_arg[2],row_arg[3],row_arg[4])
|
||||||
|
print(row["datetime"])
|
||||||
|
row["temp"] = float(row_arg[6])
|
||||||
|
row["hum"] = float(row_arg[7])
|
||||||
|
row["taupunkt"] = 0.0
|
||||||
|
parse_line(datapoints,row,'datetime',[ ('temp',pt) , ('hum',ph) , ('taupunkt',pd) ],\
|
||||||
|
plot_timeutils.time_from_csv,timeformat="%d-%m-%Y_%H:%M")
|
||||||
|
print("Info: Ignored %d lines at beginning of file"%count)
|
||||||
|
|
||||||
def check_read_in(datapoints):
|
def check_read_in(datapoints):
|
||||||
good = False
|
good = False
|
||||||
for v in datapoints.values():
|
for v in datapoints.values():
|
||||||
|
|||||||
Reference in New Issue
Block a user