diff --git a/src/icartt/dataset.py b/src/icartt/dataset.py index fd9cdc3beb5fa11209ed864407a1ecf20db4c6fb..5c5946ea52b48b6167d618db4c39d31e0509561a 100644 --- a/src/icartt/dataset.py +++ b/src/icartt/dataset.py @@ -710,10 +710,10 @@ class Dataset: def isAsciiAlpha(x): return re.match("[a-zA-Z0-9-_.]", x) - allAsciiAlpha = all([isAsciiAlpha(x) for x in name]) + allAsciiAlpha = all(isAsciiAlpha(x) for x in name) lessThan128Characters = len(name) < 128 - return allAsciiAlpha and lessThan128Characters + return allAsciiAlpha and lessThan128Characters and name.endswith('.ict') def writeHeader(self, f=sys.stdout, delimiter=DEFAULT_FIELD_DELIM): """Write header @@ -914,7 +914,8 @@ class Dataset: else: self.inputFhandle = f - # TODO should we add a filename characters check, as we have it for the variable names? + if not self.isValidFileName(pathlib.Path(f).name): + warnings.warn(f"{pathlib.Path(f).name} is not a valid ICARTT filename") self.readHeader(splitChar) if loadData: