25.labview数据采集中的读取和写入文本文件和Excel表格文件

本文将会讲解labview读取和写入文本文件和Excel文件的几种不同方式,讲解程序的基本原理,并提出具体的实施方案,本文内容如下所示。
本文文章结束会提供大家 文本和表格读取写入的源程序 ,以便于大家学习和使用。

本文中可能用到的基础知识为路径、字符串、数组等相关的知识,如果想补充与路径相关的基础知识的话可以点击下方链接查看:
Labview字符串与路径精讲(下) — 字符串及路径的用法汇总:
https://blog.csdn.net/m0_52176775/article/details/136907059

文件读写

  • 1. 数据存储的类型
  • 1. 文本文件的读取和写入
    • 1.1 文本文件读取
    • 1.2 文本文件写入
  • 2. Excel表格文件的读取和写入
    • 2.1 获取Excel的表格Sheet信息
    • 2.2 Excel的读取与写入

1. 数据存储的类型

本文中只讲解两种数据存储类型,文本(txt)类型和表格(excel)类型数据 这两种存储类型我们可以认为是存储的中间类型,可用做原始数据的存储,以便于matlab等相关软件识别调用做后续数据处理相关工作。
在这里插入图片描述
由图可以看到,第一层为Laview进行数据采集的阶段,获取原始数据并显示,第二层为数据存储阶段,根据数据类型的存储要求,提供了文本存储和表格存储两种方式。具体如下文所示

1. 文本文件的读取和写入

本节内容的应用场景比较广泛,如我们在进行仪器的数据采集实验中,得到来自于传感器或者仪器内部采集到的大量原始数据时,以何种形式储存是至关重要的,这意味着我们将数据保存为某种中间格式后将拿到什么软件中进行处理,因此数据的保存格式及保存的文件格式都是至关重要的。
如:一个时域仪器实时采集外在信号,我们将仪器采集到的时域数据以二维数组的形式保存为txt格式的文本数据,在matlab和python中都可以通过分隔符的索引调用该数据并进行去噪相关的数据处理。
在这里插入图片描述

1.1 文本文件读取

文本文件的读取往往与字符串相关,即读取的在Labview中显示为字符串形式,程序如下图所示:
在这里插入图片描述
本程序中使用了打开/创建/替换文件、读取文本文件、关闭文件三个函数,在文件路径中输入想要打开的文本文件,点击运行程序,此时前面板文本字符串控件中就可以看到对应TXT文件内的内容了。
这里需要特别注意一点,当我们的TXT文档里面有中文时,此时打开显示时我们发现我们的字符串里边的文字都是乱码的, 这是由于文件的编码格式不同导致的,如下图所示:
在这里插入图片描述
当我们发现有这种情况时,只需要将文本文件另存为一个新文件,并在保存前将文件的编码格式转换为ANSI格式即可。
在这里插入图片描述
转换完成后我们在运行程序发现前面板的字符串中显示的文本变成了正常文本。
在这里插入图片描述
文本文件的读取方式比较简单在此提出将不做过多的赘述。

1.2 文本文件写入

①字符串类文本文件的写入方式与读取方式其实是差不多的,其具体程序如下图所示:
在这里插入图片描述
输入文件路径并将需要写入的文件在前面板输入控件中输入,点击运行程序,此时打开.txt文件就可以看到文内容已经更新到文本文件中了。
在这里插入图片描述
文件中显示如图所示:
在这里插入图片描述
这里需要说明一下,从一个程序中大家既想写入文件又想读取文件时,那么尽量在写入文件之后关闭该文件,然后再重新创建新的路径打开此文件,最终在文件调用结束后关闭程序前使用关闭文件函数释放掉该文件所在路径的内存引用,避免内存引用占用程序过多的路径及内存,针对于以上的情况大家可以使用移位寄存器来刷新文件的路径,这样就可以避免多次重复打开文件了。

②数组类文件写入除了将数字转换为字符串再使用上述方法之外,还可以使用表格函数直接将数据写入,其程序可以使用如下函数来写。可以看到该函数有两个重点,一个是文件路径这里不过多强调,第二个该函数可以选择传入一维数据或二维数据。
在这里插入图片描述
我们以一个一维数组为例,随机生成一个20个元素的一维数组,每个元素大小为0-100,在目标文件中生成该文件,程序如下图所示:
在这里插入图片描述
运行程序后,我们得到一个文本文件,此时写入成功。
在这里插入图片描述
题主觉得这种写入数组文件的方式更适合做一些用于matlab等数据处理时调用的文本文件。

2. Excel表格文件的读取和写入

本节说明一下将Excel文件写入Excel表格和读取出数据的方式,这种功能常用在自动化测试中的测试用例写入、测试数据写入等场景中,话不多说,分两个小节来叙述。

2.1 获取Excel的表格Sheet信息

Excel文件的读取的函数,我们使用后面板函数中的 “文件I/O”—高级文件函数中的函数和 “报表生成” 中的相关函数来写, 我们都知道一个Excel文件是可以创建多个Sheet的,那么当我们建立分表时,写入哪个分表就成了一个问题,本节给大家介绍一个获取所有分表的一个程序:
在这里插入图片描述
我来解释一下这个程序,使用了四个函数 “创建报表、Get Worksheet、Workbook Properties、处置报表” 初始化创建一个报表的程序,在while循环中依次按顺序打开报表中的sheet,这里注意:当没有该sheet时,错误簇为T,程序终止。接下来看一下效果,在Excel中创建了以下几个sheet:
在这里插入图片描述
在我们程序的前面板将该表格地址输入,运行后可以看到。
在这里插入图片描述

2.2 Excel的读取与写入

在这里我将Excel表格的读取和写入放在了一个文件中,因为我考虑到大家在写程序的时候可以将这个程序封装为一个VI,以便于可以调用,到时候既可以做读取,也可以做写入,具体的读取与写入代码如下:
由于我们使用的是Excel表格,所以题主在这里将数据类型定义为了 二维数组

在这里插入图片描述
该程序可以读取当前表格内部的对应sheet的内容,并且以二维数组的格式列举出来,在“写入数据”的二维数组中,整理对应的表格,程序会自动将该表格内部的数据保存至相应的Excel表格的相应位置。
这里就不在给大家过多讲解了,我把程序分享在文章的末尾,大家自行学习。

链接:https://pan.baidu.com/s/1oBWLpVCzSs9IfJSXvw8rJA
提取码:6666

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/368590.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux Rsyslog+LogAnalyzer+MariaDB部署日志服务器

文章目录 Linux RsyslogLogAnalyzerMariaDB部署日志服务器1 环境准备1.1 服务器端安装LAMP环境1.2 服务启动并加入开机启动1.2.1 Apache1.2.2 MariaDB1.2.3 Php 2 Rsyslog服务端安装及配置2.1 安装Rsyslog及Rsyslog连接MySQL的模块2.2 导入rsyslog-mysql数据库文件2.3 查看刚导…

艾体宝干货 | IOTA流量分析秘籍第二招:IDS或终端保护系统分析

终端保护解决方案或入侵检测系统(IDS)可以基于启发式方法、特征码以及新解决方案中的人工智能来检测恶意事件。它们通过电子邮件、Syslog、Webhooks或其他方式生成警报。然而,有效地分析这些警报消息的根本原因,以识别和响应潜在威…

数学建模(1):期末大乱炖

1 概述!! 1.1 原型和模型 原型:客观存在的研究对象称为原型,也称为“系统”、“过程”。 机械系统、电力系统、化学反应过程、生产销售过程等都是原型; 研究原型的结构和原理, 从而进行优化、预测、评价…

【Android源码】Gerrit安装

前言 如果你打开 https://android.googlesource.com/platform/manifest,就会发现,google官方管理Android源码,使用的是Gerrit。Android系统源码是非常大的,用Git肯定是不适合。对于大型项目,得用Gerrit,今…

解决微信小程序使用textarea输入框 type=“textarea“ 文本输入限制问题

出现的问题 type"textarea" 这个限制 微信小程序使用textarea , 输入字数大于140 时就输入不进去了 加入这个就解决了 maxlength"-1" <u-inputv-model"queryParams.orderIdTxt"border"true":focus"true":auto-height&q…

c++:动态内存变量

典型的C面向对象编程 元素 (1)头文件hpp中类的定义 (2)源文件cpp中类的实现&#xff08;构造函数、析构函数、方法&#xff09; (3)主程序 案例 (1)用C来编程“人一天的生活” (2)“人”的属性&#xff1a;name、age、male (3)“人”的方法&#xff1a;eat、work(coding/shop…

【虚拟机】虚拟机网络无法访问问题【已解决】

【虚拟机】虚拟机无法上网问题【已解决】 问题探究解决方法法1&#xff1a;查看相关“网络服务”是否处于正常启动状态法2&#xff1a;重启网络法3&#xff1a;重新安装VMWare法4&#xff1a;使用NAT模式&#xff0c;每次打开win7都没连上网的解决办法 问题探究 安装了很多个虚…

香橙派 AIpro 根据心情生成专属音乐

香橙派 AIpro 根据心情生成专属音乐 一、OrangePi AI pro 开发版参数介绍1.1 接口简介1.2 OrangePi AI pro 的Linux系统功能适配情况1.3 开发板开机1.4 远程连接到 OrangePi AIpro 二、开发环境搭建2.1 创建环境、代码部署文件夹2.2 安装 miniconda2.3 为 miniconda 更新国内源…

分子AI预测赛笔记

#AI夏令营 #Datawhale #夏令营 Taks1 跑通baseline 根据task1跑通baseline 注册账号 直接注册或登录百度账号&#xff0c;etc fork 项目 零基础入门 Ai 数据挖掘竞赛-速通 Baseline - 飞桨AI Studio星河社区 启动项目 选择运行环境&#xff0c;并点击确定&#xff0c;没…

Redis的八种数据类型介绍

Redis 是一个高性能的键值存储&#xff0c;它支持多种丰富的数据类型。每种数据类型都有其特定的用途和底层实现。下面我将介绍 Redis 支持的主要数据类型及其背后的数据结构。 本人这里还有几篇详细的Redis用法文章&#xff0c;可以用来进阶康康&#xff01; 1. 字符串 (Stri…

轻松跨越国界:使用WildCard畅享全球AI服务

大家好&#xff0c;现在AI技术已经深入到我们的日常生活中。然而&#xff0c;许多朋友仍然难以获取优质的AI工具和应用。那么&#xff0c;如何才能使用像ChatGPT这样的AI服务呢&#xff1f; 今天我为大家介绍一个“一劳永逸”的解决方案&#xff0c;它就是我们的主角——WildC…

基于antv x6实现的组织架构图

X6 是基于 HTML 和 SVG 的图编辑引擎&#xff0c;基于 MVC 架构&#xff0c;用户更加专注于数据逻辑和业务逻辑。 一、业务背景 将组织树形结构图形化&#xff0c;更直观的展示个人所在的组织架构。 二、功能点 组织结构按需渲染&#xff0c;支持层级展开、收缩按需求自定义…

秋招突击——设计模式补充——单例模式、依赖倒转原则、工厂方法模式

文章目录 引言正文依赖倒转原则工厂方法模式工厂模式的实现简单工厂和工厂方法的对比 抽线工厂模式最基本的数据访问程序使用工厂模式实现数据库的访问使用抽象工厂模式的数据访问程序抽象工厂模式的优点和缺点使用反射抽象工厂的数据访问程序使用反射配置文件实现数据访问程序…

PhysioLLM 个性化健康洞察:手表可穿戴设备实时数据 + 大模型

个性化健康洞察&#xff1a;可穿戴设备实时数据 大模型 提出背景PhysioLLM 图PhysioLLM 实现数据准备用户模型和洞察生成个性化数据总结和洞察是如何生成的&#xff1f; 解析分析 提出背景 论文&#xff1a;https://arxiv.org/pdf/2406.19283 虽然当前的可穿戴设备伴随应用&…

S272钡铼技术4G无线RTU支持多路DIN输入和模拟量转换至4G网络

钡铼第四代RTU S272是一款先进的工业级4G远程遥测终端&#xff0c;为各种远程工业数据采集和控制系统提供了高效解决方案。结合了现代通信技术和多功能的输入输出接口&#xff0c;S272不仅支持多路数字量和模拟量输入&#xff0c;还具备灵活的扩展性和强大的控制功能&#xff0…

什么是嵌入式,单片机又是什么,两者有什么关联又有什么区别?

在开始前刚好我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01;从科普的角度&#xff0c;…

Python酷库之旅-第三方库Pandas(001)

目录 一、Pandas库的由来 1、背景与起源 1-1、开发背景 1-2、起源时间 2、名称由来 3、发展历程 4、功能与特点 4-1、数据结构 4-2、数据处理能力 5、影响与地位 5-1、数据分析“三剑客”之一 5-2、社区支持 二、Pandas库的应用场景 1、数据分析 2、数据清洗 3…

记录OSPF配置,建立邻居失败的过程

1.配置完ospf后&#xff0c;在路由表中不出现ospf相关信息 [SW2]ospf [SW2-ospf-1]are [SW2-ospf-1]area 0 [SW2-ospf-1-area-0.0.0.0]net [SW2-ospf-1-area-0.0.0.0]network 0.0.0.0 Jul 4 2024 22:11:58-08:00 SW2 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25 .1…

二分查找及其变种

一、概念 二分查找算法&#xff08;Binary Search Algorithm&#xff09;是一种在有序数组中查找特定元素的高效搜索方法。 其基本思想是将目标值与数组中间的元素进行比较&#xff0c;如果目标值等于中间元素&#xff0c;则查找成功&#xff1b;如果目标值小于中间元素&…

Visual Studio 设置回车代码补全

工具 -> 选项 -> 文本编辑器 -> C/C -> 高级 -> 主动提交成员列表 设置为TRUE