C#WPF中的实现读取和写入文件的几种方式
说明:C#中实现读取和写入的类根据需要来选择。
1、File类
File类是用于操作文件的工具类,提供了对文件进行创建、复制、删除、移动和打开单一文件的静态方法。但需要注意的是,WPF中使用File的类,需要先引用System.IO下的命名空间。以下是System.IO中File类的一些主要方法和属性:
1.1 ReadAllText读取文件
通过调用File类的ReadAllText方法,可以直接将指定文件的所有文本内容读取到一个字符串中。
using System.IO;//读取文本
string filePath = @"C:\Users\Administrator\Desktop\1.txt";
string content = File.ReadAllText(filePath);
Console.WriteLine(content);
1.2 WriterAllText写入文件
通过调用File类的WriteAllText方法,可以将指定的文本内容写入到文件中,如果文件已存在则会覆盖原有内容。
using System.IO;//吸入文本
string filePath = @"C:\Users\Administrator\Desktop\1.txt";
string content = "这是一段要写入文件的文本。";
File.WriteAllText(filePath, content);
1.3 Create 创建文件
通过调用File类的Create方法可以创建一个新的文件,然后关闭文件流以确保文件资源被释放。
using System.IO;string filePath = @"C:\Users\Administrator\Desktop\2.txt";
if (File.Create(filePath).Close())
{Console.WriteLine("文件创建成功");
}
else
{Console.WriteLine("文件创建失败");
}
1.4 查阅Fille类其他的方法
更多方法见官方使用说明:File 类 (System.IO) | Microsoft Learn

2、StreamWriter文本写入
System.IO.StreamWriter是C#中的一个类,用于将文本写入到文件中。它提供了一些方法来设置文件的编码、缓冲区大小等属性,以及一些方法来写入文本和关闭文件。
以下是一些主要的方法和属性:
-
构造函数:StreamWriter(string path) - 创建一个StreamWriter对象,用于将文本写入到指定的文件中。
-
Write(string text) - 将指定的字符串写入到文件中。
-
WriteLine(string text) - 将指定的字符串写入到文件中,并在末尾添加一个换行符。
-
Flush() - 清空缓冲区,并将数据写入到文件中。
-
Close() - 关闭文件,并释放与该文件关联的所有资源。
-
AutoFlush - 一个布尔值,表示是否在每次调用Write或WriteLine方法时自动刷新缓冲区。默认值为true。
-
Encoding - 一个Encoding对象,表示要使用的字符编码。默认值为System.Text.Encoding.Default。
-
IndentSize - 一个整数,表示缩进的大小。默认值为0。
-
NewLine - 一个字符串,表示新行的字符。默认值为"
using System;
using System.IO;class Program
{static void Main(){// 创建一个StreamWriter对象,用于将文本写入到"output.txt"文件中using (StreamWriter writer = new StreamWriter("output.txt")){// 写入一行文本writer.WriteLine("Hello, World!");// 写入多行文本writer.WriteLine("This is a test.");writer.WriteLine("StreamWriter is useful for writing text to files.");// 刷新缓冲区,并将数据写入到文件中writer.Flush();}}
}
3、StreamReader 读取文本
System.IO.StreamReader是C#中的一个类,用于从文件中读取文本。它提供了一些方法来设置文件的编码、缓冲区大小等属性,以及一些方法来读取文本和关闭文件。
以下是一些主要的方法和属性:
-
构造函数:StreamReader(string path) - 创建一个StreamReader对象,用于从指定的文件中读取文本。
-
Read() - 读取一个字符,并返回其Unicode值。如果已经到达文件末尾,则返回-1。
-
ReadLine() - 读取一行文本,直到遇到换行符或文件末尾。
-
Close() - 关闭文件,并释放与该文件关联的所有资源。
-
AutoClose - 一个布尔值,表示是否在读取完文件后自动关闭文件。默认值为true。
-
Encoding - 一个Encoding对象,表示要使用的字符编码。默认值为System.Text.Encoding.Default。
-
BaseStream - 一个Stream对象,表示底层的流。可以通过这个属性访问底层的流,例如FileStream或MemoryStream。
using System;
using System.IO;class Program
{static void Main(){// 创建一个StreamReader对象,用于从"input.txt"文件中读取文本using (StreamReader reader = new StreamReader("input.txt")){// 读取一行文本string line = reader.ReadLine();while (line != null){Console.WriteLine(line);line = reader.ReadLine();}}}
}
相关文章:
C#WPF中的实现读取和写入文件的几种方式
说明:C#中实现读取和写入的类根据需要来选择。 1、File类 File类是用于操作文件的工具类,提供了对文件进行创建、复制、删除、移动和打开单一文件的静态方法。但需要注意的是,WPF中使用File的类,需要先引用System.IO下的命名空间。…...
如何利用自动发现将现网的进程纳入到监控系统中?
进程监控是一项关键任务,旨在监测系统中运行的进程的性能和状态。通过有效的进程监控,可以实时了解进程的运行情况,及时发现问题并采取措施,确保系统的稳定性和性能。 本期EasyOps产品使用最佳实践,我们将为您揭晓&am…...
英语学习(过去篇)
一、询问别人一周的情况 1.日常活动词汇 1)I watched TV 我看了电视 2)I ate breakfast 我吃了早餐 3)I left the house 我离开了家 4)I did the dishes 我洗了碗 5)I washed my clothes …...
excel中通过ROW函数返回引用的行号
例如,想引用B3的行号(行号应该是3): 鼠标点在想输入函数的单元格: 插入-》函数: 选择ROW函数: 点击“继续”,然后点击红框圈出来的按钮: 鼠标点击B3单元格&…...
spring学习笔记-IOC,AOP,事务管理
目录 概述 什么是spring 侵入式的概念 spring的核心 spring的优势 注意 IOC控制反转 概述 核心 容器 DI,dependency injection依赖注入 概念 注入方式 循环依赖 spring如何解决循环依赖 spring生成Bean的方式 Bean属性注入(Bean属性赋值…...
MYSQL中的触发器TRIGGER
1.概念 触发器是一个特殊的存储过程,当触发器保护的数据发生变更时就会触发。 2.特性 1.触发器与表息息相关,一般我们一个表创建六个触发器。 2.六个触发器其实是三种类六个 insert 类型 before | after insertupdate 类型 before | af…...
用人话讲解深度学习中CUDA,cudatookit,cudnn和pytorch的关系
参考链接 本人学习使用,侵权删谢谢。用人话讲解深度学习中CUDA,cudatookit,cudnn和pytorch的关系 CUDA CUDA是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,是一种并行计算平台和编程模型&…...
【JavaEE】Servlet API 详解(HttpServletRequest类)
一、HttpServletRequest Tomcat 通过 Socket API 读取 HTTP 请求(字符串), 并且按照 HTTP 协议的格式把字符串解析成 HttpServletRequest 对象(内容和HTTP请求报文一样) 1.1 HttpServletRequest核心方法 1.2 方法演示 WebServlet("/showRequest&…...
HTML页面的全屏显示及退出全屏案例
进入全屏 requestFullscreen 接收一个参数 options(可选), options 是一个对象, 但是只有一个字段 navigationUI, 用于控制是否在元素处于全屏模式时显示导航条. 可选值为 auto, hide, show, 默认值为 auto;当元素不在文档内时, 调用requestFullScreen回失败。 退出…...
layui弹出层点回车键无限弹出解决
$(document).keydown(function (event) {if (event.keyCode 13) {$("*").blur();//去掉焦点if ($(".layui-layer-btn0").length > 0)layer.closeAll();}});...
抖音测试付费短视频:从短剧领域拓展到知识、娱乐全品类
11月16日,抖音开始测试短视频内容付费,即用户在观看创作者的内容时,部分内容需要付费解锁才能全部观看,涉及范围不仅包括此前已经进行付费试水的短剧领域,还拓展至知识、娱乐等几乎全品类内容,用户可按单条…...
代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结
代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结 文章链接:两个字符串的删除操作、编辑距离、编辑距离总结 视频链接:两个字符串的删除操作、编辑距离 1. LeetCode 583. 两个字符串的删除操作 1.1 思…...
Excel vlookup 如何使用
Excel vlookup 如何使用 打开WX, 搜索 “程序员奇点” Excel vlookup可以说是利器,非常好用的工具,用来查询 Excel 或者进行数据匹配,十分方便。 VLookuP 如何使用,不常用的同学经常容易忘记,这次做个记录ÿ…...
Latex常用特殊字符汇总
本文汇总了博主在使用Latex写文档过程中遇到的所有常用疑难字符、表达式等等及对应的Latex形式 持续更新... 目录 常用字符波浪号1. 文本模式:~2. 数学模式: ∼ \sim ∼3. 字母上方的波浪号: a ˜ \~a a˜ 字母上方角标 (数学模式强调符)箭头…...
Day1跟李沐学AI-深度学习课程00-04【预告、课程安排、深度学习介绍、安装、数据操作+数据预处理】
00 预告 《动手学深度学习》https://github.com/d2l-ai/d2l-zh 01 课程安排 02 深度学习介绍 03 安装 本地安装 使用conda/miniconda环境 conda env remove d2l-zh conda create -n -y d2l-zh python3.8 pip conda activate d2l-zh 安装需要的包 pip install -y jupyter …...
借助拧紧曲线高效管理螺栓装配防错——SunTorque智能扭矩系统
拧紧曲线作为拧紧质量的“晴雨表”,在拧紧过程中,能够实时探知到拧紧状态是否存在异常,并根据曲线特质推测出拧紧过程中遇到了什么样的问题,今天SunTorque智能扭矩系统带您了解拧紧曲线在螺栓装配防错管理中如何发挥作用。 合格的…...
李开复再度回应争议;10 月中国游戏厂商及应用出海收入 30 强出炉丨 RTE 开发者日报 Vol.86
开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE (Real Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有…...
mysql undolog
undolog 日志介绍...
milvus数据库-管理数据库
一个 Milvus 集群最多支持 64 个数据库。 1.创建数据库 先连接数据库服务器,再创建 from pymilvus import connections, dbconn connections.connect(host"127.0.0.1", port19530)database db.create_database("book")2.连接数据库 可以改变…...
一键整合,万用万灵,Python3.10项目嵌入式一键整合包的制作(Embed)
我们知道Python是一门解释型语言,项目运行时需要依赖Python解释器,并且有时候需要安装项目中对应的三方依赖库。对于专业的Python开发者来说,可以直接通过pip命令进行安装即可。但是如果是分发给其他的Windows用户,特别是不熟悉Py…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
