Skip to content
Snippets Groups Projects

intergrate rt130

Merged Lan Dam requested to merge intergrate_rt130 into master
Files
31
from typing import List, Dict, Optional, Union, Tuple
from typing import List, Dict, Optional, Union, Tuple
import numpy as np
import numpy as np
 
import os
 
from pathlib import Path
 
from sohstationviewer.database.extract_data import get_convert_factor
from sohstationviewer.database.extract_data import get_convert_factor
@@ -207,3 +210,36 @@ def reset_data(selected_key: Union[str, Tuple[str, str]], data_dict: Dict):
@@ -207,3 +210,36 @@ def reset_data(selected_key: Union[str, Tuple[str, str]], data_dict: Dict):
del selected_data_dict[chan_id][k]
del selected_data_dict[chan_id][k]
except KeyError:
except KeyError:
pass
pass
 
 
 
def read_text(path2file: Path) -> Union[bool, str]:
 
"""
 
CHANGED FROM handling_data.read_text:
 
+ Don't need to check binary because UnicodeDecodeError caught means
 
the file is binary
 
 
Read text file and add to log_data under channel TEXT.
 
+ Raise exception if the file isn't a text file
 
+ Remove empty lines in content
 
:param path2file: str - absolute path to text file
 
:param file_name: str - name of text file
 
:param text_logs: holder to keep log string, refer to
 
DataTypeModel.__init__.log_data['TEXT']
 
"""
 
try:
 
with open(path2file, 'r') as file:
 
content = file.read().strip()
 
except UnicodeDecodeError:
 
return
 
 
if content != '':
 
# skip empty lines
 
no_empty_line_list = [
 
line for line in content.splitlines() if line]
 
no_empty_line_content = os.linesep.join(no_empty_line_list)
 
 
log_text = "\n\n** STATE OF HEALTH: %s\n" % path2file.name
 
log_text += no_empty_line_content
 
else:
 
log_text = ''
 
return log_text
Loading