INI和CSV文件保存
INI文件
INI文件是一种配置文件格式,通常用于Windows操作系统中的应用程序中。
它是一种文本文件,由多个节和键值对组成,用于存储应用程序的配置信息。
INI文件的特点包括:
-
INI文件是一种文本文件,易于编辑和阅读。
-
INI文件的结构简单,由多个节和键值对组成,易于理解和维护。
-
INI文件支持多层级节,可以方便地组织和管理配置信息。
-
INI文件不支持数据类型,所有的键值对都是字符串类型。
-
INI文件通常用于存储应用程序的配置信息,例如窗口位置、字体大小、数据库连接等。
INI文件是一种简单、易于使用和维护的配置文件格式,适用于存储应用程序的配置信息。
INI文件通常包含多个节(section
),每个节包含多个键值对(key-value pair
)。
每个键值对由一个键(key)和一个值(value)组成,中间用等号连接。例如:
[Database]
Server=127.0.0.1
Port=3306
Username=root
Password=123456
Database=mydb
INI文件支持多层级节,可以方便地组织和管理配置信息
[Database]
Server=127.0.0.1
Port=3306
Username=root
Password=123456
Database=mydb[Logging]
Level=INFO
File=/var/log/myapp.log[相机1]
曝光=50
亮度=100
在上面的例子中,INI文件包含了两个节,[Database]和[Logging]。
每个节下面包含了多个键值对,分别描述了数据库连接和日志记录的相关信息。
INI文件不支持数据类型,所有的键值对都是字符串类型。
这意味着在读取INI文件时,需要将字符串转换成对应的数据类型,例如整数、浮点数、布尔值等。
总之,INI文件是一种轻量级的配置文件格式,非常适用于存储应用程序的配置信息。
它的结构简单,易于理解和维护,适用于不需要复杂数据类型和结构的场景。
using Ini;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
//using Ini;namespace _01_INI文件读写
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private string cameName;private int expos;private int bright;private string Ip;private string FileName;private void button2_Click(object sender, EventArgs e){//获取配置信息 cameName = textBox1.Text;expos = Convert.ToInt32( textBox2.Text);bright = Convert.ToInt32(textBox3.Text);Ip = textBox4.Text;//保存//保存的地址string path =Directory.GetCurrentDirectory()+@"\配置文件";if (!Directory.Exists(path)){Directory.CreateDirectory(path);}//设置配置文件的名称string fileName = path + @"\相机配置文件.ini";FileName = fileName;//调用INIApi中的方法写入Ini.IniAPI.INIWriteValue(fileName, cameName,"曝光",expos.ToString());Ini.IniAPI.INIWriteValue(fileName, cameName, "亮度", bright.ToString());Ini.IniAPI.INIWriteValue(fileName, cameName, "IP", Ip);MessageBox.Show("保存成功");}//读取private void button1_Click(object sender, EventArgs e){expos = IniAPI.GetPrivateProfileInt(textBox1.Text,"曝光",0,FileName);bright = IniAPI.GetPrivateProfileInt(textBox1.Text, "亮度", 0, FileName);Ip=IniAPI.GetPrivateProfileString(textBox1.Text, "Ip", "", FileName);expos += 20;textBox2.Text= expos.ToString();textBox3.Text = bright.ToString();}}
}
Csv
CSV文件格式旨在存储表格数据,该数据通常包含行和列。每一行数据代表表格中的一行,每一列代表表格中的一列。CSV文件中每个数据字段之间都使用逗号分隔。每一行以换行符结束。如:
xxxxxxxxxx 姓名,年龄,性别小明,20,男小红,18,女小华,19,女
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace csv
{public class CSVAPI{// 写入csvpublic void SaveData(string data,string result){// Directory.GetCurrentDirectory() 文件夹路径string path = Directory.GetCurrentDirectory() + "\\data";if (!Directory.Exists(path))// 如果不存在这个路径 指的文件夹{Directory.CreateDirectory(path);// 创建该路径}string fileName = $"{path}\\{DateTime.Now.ToString("yyyy-MM-dd")}.csv";// 文件路径if (!File.Exists(fileName))// 如果csv文件不存在{// FileStream 文件流// 参数一:文件操作路径// 参数二:FileMode.Create 如果有则替换 如果没有则新建// 参数三:FileAccess.Write 写入的权限FileStream fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);// StreamWriter 写入工具StreamWriter sw = new StreamWriter(fs, Encoding.Default);StringBuilder sb = new StringBuilder();// 定义可变字符串 保存存储的数据sb.Append("时间").Append(",").Append("姓名").Append(",").Append("事件");// 拼接表头sw.WriteLine(sb);// 添加表头sw.Close();// 关闭读取工具sw.Dispose();// 释放资源fs.Close();// 关闭文件流fs.Dispose();// 释放资源/}// 如果csv存在 只需要把此次的数据进行追加写入 不用写入表头using (StreamWriter sw2 = new StreamWriter(fileName, true, Encoding.Default)){StringBuilder sb = new StringBuilder();sb.Append(DateTime.Now.ToString("HH-mm-ss")).Append(",").Append(data).Append(",").Append(result);sw2.Write(sb);}}// 读取csvpublic string Read(){string path = Directory.GetCurrentDirectory() + "\\data";if (!Directory.Exists(path))// 如果不存在路径{Directory.CreateDirectory(path);// 创建该路径}string filename = $"{path}\\{DateTime.Now.ToString("yyyy-MM-dd")}.csv";if (!File.Exists(filename)){return "文件不存在";}StreamReader sr = new StreamReader(filename,Encoding.Default);// 读取工具string s = sr.ReadToEnd();// 读取数据sr.Close();sr.Dispose();return s;}}
}
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace csv
{public class CSVAPI{// 写入csvpublic void SaveData(string data,string result){// Directory.GetCurrentDirectory() 文件夹路径string path = Directory.GetCurrentDirectory() + "\\data";if (!Directory.Exists(path))// 如果不存在这个路径 指的文件夹{Directory.CreateDirectory(path);// 创建该路径}string fileName = $"{path}\\{DateTime.Now.ToString("yyyy-MM-dd")}.csv";// 文件路径if (!File.Exists(fileName))// 如果csv文件不存在{// FileStream 文件流// 参数一:文件操作路径// 参数二:FileMode.Create 如果有则替换 如果没有则新建// 参数三:FileAccess.Write 写入的权限FileStream fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);// StreamWriter 写入工具StreamWriter sw = new StreamWriter(fs, Encoding.Default);StringBuilder sb = new StringBuilder();// 定义可变字符串 保存存储的数据sb.Append("时间").Append(",").Append("姓名").Append(",").Append("事件");// 拼接表头sw.WriteLine(sb);// 添加表头sw.Close();// 关闭读取工具sw.Dispose();// 释放资源fs.Close();// 关闭文件流fs.Dispose();// 释放资源/}// 如果csv存在 只需要把此次的数据进行追加写入 不用写入表头using (StreamWriter sw2 = new StreamWriter(fileName, true, Encoding.Default)){StringBuilder sb = new StringBuilder();sb.Append(DateTime.Now.ToString("HH-mm-ss")).Append(",").Append(data).Append(",").Append(result);sw2.Write(sb);}}// 读取csvpublic string Read(){string path = Directory.GetCurrentDirectory() + "\\data";if (!Directory.Exists(path))// 如果不存在路径{Directory.CreateDirectory(path);// 创建该路径}string filename = $"{path}\\{DateTime.Now.ToString("yyyy-MM-dd")}.csv";if (!File.Exists(filename)){return "文件不存在";}StreamReader sr = new StreamReader(filename,Encoding.Default);// 读取工具string s = sr.ReadToEnd();// 读取数据sr.Close();sr.Dispose();return s;}}
}
API
应用程序编程接口(英语:Application Programming Interface,简称:API),是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
相关文章:
INI和CSV文件保存
INI文件 INI文件是一种配置文件格式,通常用于Windows操作系统中的应用程序中。 它是一种文本文件,由多个节和键值对组成,用于存储应用程序的配置信息。 INI文件的特点包括: INI文件是一种文本文件,易于编辑和阅读。…...

汽车智能钥匙中PKE低频天线的作用
PKE(Passive Keyless Entry)即被动式无钥匙进入系统,汽车智能钥匙中PKE低频天线在现代汽车的智能功能和安全保障方面发挥着关键作用,以下是其具体作用: 信号交互与身份认证 低频信号接收:当车主靠近车辆时…...

计算机等级考试
一、计算机等级考试——题库 (1)选择题 (2)基本操作题 (3)上网题 (4)文字题 (5)表格题 (6)演示文稿题 二、计算机等级考试——标准评…...

Geotools中获取Shapefile的属性表格字符集编码的一种方法
目录 前言 1、字符集编码的重要性 2、Geotools 在 GIS 开发中的地位 一、GeoTools的字符集知识 1、字符集的作用 2、shapefile中字符集信息 二、GeoTools中获取字符集的方法 1、默认获取 2、从DataStore中获取 3、从CPG文件中获取 4、生产字符获取实践 三、总结 前言…...

HTTP 与 HTTPS 协议:从基础到安全强化
引言 互联网的消息是如何传递的? 是在路由器上不断进行跳转 IP的目的是在寻址 HTTP 协议:互联网的基石 定义 HTTP(英文:HyperText Transfer Protocol,缩写:HTTP),即超文本传输协…...

Scrapy爬虫框架介绍
目录 什么是Scrapy Scrapy核心组件 Scrapy扩展组件 组件交互流程 安装Scrapy Scrapy项目目录结构说明 创建Scrapy项目 创建爬虫 运行爬虫 配置请求头 全局配置请求头 指定爬虫配置请求头 配置管道pipeline 全局配置pipeline 方式一:指定爬虫配置pipe…...
Stable Diffusion模型高清算法模型类详解
Stable Diffusion模型高清算法模型类详细对比表 模型名称核心原理适用场景参数建议显存消耗细节增强度优缺点4x-UltraSharp残差密集块(RDB)结构优化纹理生成真实人像/建筑摄影重绘幅度0.3-0.4,分块尺寸768px★★★★★☆皮肤纹理细腻,但高对比场景易出现…...
软考网络安全口诀
首先,我们来看第一个口诀 “防御为先,安全无小事”。这个口诀强调了网络安全中的防御意识。在软考备考过程中,我们需要深刻理解网络安全不仅仅是技术层面的问题,更是一种全面的防御思维。从网络架构设计到日常运维管理࿰…...

Baklib内容中台赋能企业智管
内容中台构建全场景智管 现代企业数字化运营中,全域内容管理能力已成为核心竞争力。通过智能知识引擎驱动的内容中台架构,企业能够实现跨部门、多形态数据的统一归集与动态调度。以某制造企业为例,其利用中台系统将分散在CRM、ERP及内部文档…...

vscode+vue前端开发环境配置
目录 一、安装Vue二、使用vue新建项目 一、安装Vue 在node.js安装好之后, npm config set registry https://registry.npmmirror.com# 安装vue相关工具,webpack用来项目构建、打包、资源整合等。 npm install webpack -g# 安装vue-cli脚手架 npm insta…...
Python项目-基于深度学习的校园人脸识别考勤系统
引言 随着人工智能技术的快速发展,深度学习在计算机视觉领域的应用日益广泛。人脸识别作为其中的一个重要分支,已经在安防、金融、教育等多个领域展现出巨大的应用价值。本文将详细介绍如何使用Python和深度学习技术构建一个校园人脸识别考勤系统&#…...

浅谈C++函数特性
C的函数特性 前言 在C中,函数加入了许多特性,例如:a、函数缺省参数 b、函数重载 c、内联函数 等等……,这里我会和大家详细去探讨这些特性。以及探讨这些特性的一些细节,同时在内联部分,我们还会把C语言的…...

Python----数据分析(Matplotlib三:绘图二:箱图,散点图,饼图,热力图,3D图)
一、箱图 箱图(Box Plot),又称为箱形图、箱线图、盒式图、盒状图或盒须图,是一种用于展示数据分布情况的统计图表 箱图通过显示数据的中位数、上下四分位数(Q1和Q3)、异常值和数据的分布范围,提…...
高性能PHP框架webman爬虫引擎插件,如何爬取数据
文章精选推荐 1 JetBrains Ai assistant 编程工具让你的工作效率翻倍 2 Extra Icons:JetBrains IDE的图标增强神器 3 IDEA插件推荐-SequenceDiagram,自动生成时序图 4 BashSupport Pro 这个ides插件主要是用来干嘛的 ? 5 IDEA必装的插件&…...

【2025年后端开发终极指南:云原生、AI融合与性能优化实战】
一、2025年后端开发的五大核心趋势 1. 云原生架构的全面普及 云原生(Cloud Native)已经成为企业级应用的核心底座。通过容器化技术(DockerKubernetes)和微服务架构,开发者能够实现应用的快速部署、弹性伸缩和故障自愈…...

健康养生:开启活力人生的钥匙
在这个瞬息万变的时代,人们愈发珍视健康。健康养生,宛如一把神奇的钥匙,为我们打开通往活力人生的大门,全方位呵护身心,提升生活品质。 从饮食层面看,均衡膳食是核心。每餐力求包含碳水化合物、蛋白质、脂…...

vue2+ele-ui实践
前言:真理先于实践,实践发现真理,再实践检验真理 环境:vue2 & element-ui 正片: Select 选择器 简称 下拉框 下拉框完整的使用循环 下拉框 → 点击下拉框 → 展示数据 → 选择数据 → 下拉框显示数据 核心具有…...

三维重建(十五)——多尺度(coarse-to-fine)
文章目录 一、多尺度与图像金字塔:从全局结构到局部细节二、特征提取与匹配2.1 从数据采集的角度2.2 从数据增强的角度2.3 从特征提取的方式三、以多尺度的方式使用特征3.1 特征提取与匹配3.1.1 多尺度特征检测3.1.2 金字塔匹配3.2 深度估计与立体匹配3.2.1 多尺度立体匹配3.2…...

SparkStreaming之04:调优
SparkStreaming调优 一 、要点 4.1 SparkStreaming运行原理 深入理解 4.2 调优策略 4.2.1 调整BlockReceiver的数量 案例演示: object MultiReceiverNetworkWordCount {def main(args: Array[String]) {val sparkConf new SparkConf().setAppName("Networ…...

勿以危小而为之勿以避率而不为
《故事汇之:所见/所闻/所历/所想》:《公园散步与小雨遇记》(二) 就差一点到山顶了,路上碰到一阿姨,她说等会儿要下大雨了,让我不要往上走了,我犹豫了一会儿,还是听劝地返…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...

中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...