def getInjectionTime(vxpPath): with open(vxpPath, 'rb') as f: num = 0 timestamps=[] ttlins=[] for line in f: num += 1 if num>=11: line = line.strip() line = str(line, encoding = "utf8") #print(line) line = line.split(',') time = line[2] if len(time)<4: ms = int(time) s = 0 else: ms = int(time[len(time)-3:]) s = int(time[0:len(time)-3]) timestamps.append(s+ms/1000) # unit [s] ttlins.append(int(line[4])) timestamps = np.array(timestamps) ttlins = np.array(ttlins) # 提取出束时刻的索引 index = np.where( ttlins==0)[0] # 初始出束时刻 injectionTime = timestamps[index[0]] return injectionTime
时间: 2023-12-20 19:06:34 浏览: 132
c++简单的获取time时间
这段代码用于从一个文件中提取出束时刻(injectionTime),具体来说,它读取一个二进制文件(vxpPath),并解析其中的数据。在读取文件的过程中,它会跳过前10行,并将后面的每一行解析为一个数组(line),其中包含了时间戳等信息。然后,它将每一行的时间戳转换为秒数,并将其存储在一个数组(timestamps)中。同时,它还将每一行的ttlins值存储在另一个数组(ttlins)中。
在处理完所有的行之后,它会使用numpy库中的where函数来找到所有ttlins值为0的行的索引,然后选取第一个索引对应的时间戳作为injectionTime,并将其返回。
阅读全文