当前位置: 首页 > news >正文

c# 文件读取和写入

文件写入

using System.Collections.Generic;
namespace demo1;/// <summary>
/// System.IO下的所有的Stream类是所有数据流的基类
/// 流是用于传输数据的对象,流就是用来传输数据的
/// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
/// 流一般具有三种操作:
/// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
/// 写入操作:从一种数据结构中读取数据并且存放在流对象中
/// 搜索操作:从流中当前位置搜索到指定位置
/// </summary>
class proj
{internal static void Main(string[] args){//文件流:用来实现对文件的读取和写入。//文本文件的写入和读取//FileStream类的对象只能以字节的形式读取和写入数据//StreamReader类允许直接将字符和字符串写入文件,一般不针对二进制数据string path = "E:\\Desktop\\c#\\ConsoleApp1\\ConsoleApp1\\hello.txt";string mystr = "我爱你";//一般先创建FileStream对象,然后创建StreamWriter对象FileStream fs = new FileStream(path, FileMode.OpenOrCreate);StreamWriter sw=new StreamWriter(fs);sw.WriteLine(mystr);sw.Close();Console.WriteLine("写入完成");}
}

文件的读取

using System.Collections.Generic;
namespace demo1;
using System.IO;
/// <summary>
/// System.IO下的所有的Stream类是所有数据流的基类
/// 流是用于传输数据的对象,流就是用来传输数据的
/// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
/// 流一般具有三种操作:
/// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
/// 写入操作:从一种数据结构中读取数据并且存放在流对象中
/// 搜索操作:从流中当前位置搜索到指定位置
/// </summary>
class proj
{internal static void Main(string[] args){//文件流:用来实现对文件的读取和写入。//文本文件的写入和读取//FileStream类的对象只能以字节的形式读取和写入数据//StreamReader类允许直接将字符和字符串写入文件,一般不针对二进制数据string path = "E:\\Desktop\\c#\\ConsoleApp1\\ConsoleApp1\\hello.txt";//string mystr = "我爱你";//一般先创建FileStream对象,然后创建StreamWriter对象//FileStream fs = new FileStream(path, FileMode.OpenOrCreate);//StreamWriter sw=new StreamWriter(fs);//sw.WriteLine(mystr);//sw.Close();//Console.WriteLine("写入完成");//StreamReader类  用于从文件中读取数据,该类是一个通用类,可以用于任意流FileStream fs=new FileStream(path,FileMode.OpenOrCreate);string str = "";StreamReader sr = new StreamReader(fs);str=sr.ReadLine();sr.Close();Console.WriteLine(str); }
}

二进制文件的写入与读取

using System.Collections.Generic;
namespace demo1;
using System.IO;
/// <summary>
/// System.IO下的所有的Stream类是所有数据流的基类
/// 流是用于传输数据的对象,流就是用来传输数据的
/// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
/// 流一般具有三种操作:
/// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
/// 写入操作:从一种数据结构中读取数据并且存放在流对象中
/// 搜索操作:从流中当前位置搜索到指定位置
/// </summary>
class proj
{internal static void Main(string[] args){Console.WriteLine("二进制文件的写入");Console.WriteLine("请输入文件名");string path=Console.ReadLine();//初始化FileStream对象FileStream fs=new FileStream(path, FileMode.OpenOrCreate);//初始化一个BinaryWriter对象BinaryWriter bw=new BinaryWriter(fs);int a = 40;double b = 3.14;bool c = true;string d = "hello world";//写入文件bw.Write(a);bw.Write(b);bw.Write(c);bw.Write(d);Console.WriteLine("成功写入");bw.Close();  //关闭BinaryWriter对象fs.Close();  //关闭文件流Console.WriteLine("二进制文件的读取");BinaryReader br=new BinaryReader(new FileStream(path,FileMode.Open));int e = br.ReadInt32();Console.WriteLine("int 型整型数据\t{0}",e);double f = br.ReadDouble();Console.WriteLine("double 数据 \t{0}",f);bool g = br.ReadBoolean();Console.WriteLine("bool 数据 \t{0}", g);string h = br.ReadString();Console.WriteLine("字符串类型数据\t{0}", h);br.Close();Console.WriteLine("读取完成");}
}

c#遍历文件夹

using System.Collections.Generic;
namespace demo1;
using System.IO;
using System.Drawing;class proj
{internal static void Main(string[] args){DirectoryInfo dir = new DirectoryInfo("E:\\Desktop\\c#\\data");FileSystemInfo[] fs=dir.GetFileSystemInfos();foreach(FileSystemInfo i in fs){if ( i is DirectoryInfo){Console.WriteLine("是文件夹{0}",i.FullName);string [] a=Directory.GetFiles(i.FullName);foreach (string s in a){ Console.WriteLine("文件:{0}",s);}}else{Console.WriteLine("不是文件夹{0}",i.FullName);FileStream fb=File.OpenRead("E:\\Desktop\\c#\\data\\data\\apple_1.jpg");int file_lenth=(int)fb.Length;Byte[] image = new Byte[file_lenth]; //建立一个字节数组fb.Read(image,0, file_lenth );//按字节流读取}}}
}

在这里插入图片描述

相关文章:

c# 文件读取和写入

文件写入 using System.Collections.Generic; namespace demo1;/// <summary> /// System.IO下的所有的Stream类是所有数据流的基类 /// 流是用于传输数据的对象&#xff0c;流就是用来传输数据的 /// 数据传输的两种方式&#xff1a;1、数据从外部源传输到程序中&#…...

【MySQL库的操作】

目录&#xff1a; 前言库的操作创建数据库字符集和校验规则校验规则对数据库的影响 选择和查看数据库修改数据库删除数据库备份注意事项查看连接情况 总结 前言 剑指offer&#xff1a;一年又二天 库的操作 创建、选择、查看、修改、删除与备份。 创建数据库 CREATE DATABASE…...

rocketmq 集群环境部署及与spring cloud 集成

1 下载zip 安装包 rocketmq-all-5.1.4-bin-release.zip 2 修改启动配置&#xff0c;防止默认内存配置过高 runserver.sh/runbroker.sh/tools.sh 3 启动namesrv nohup sh bin/mqnamesrv >>namesrv.log & 4 启动brokerproxy 单点模式&#xff1a; nohup sh bin…...

SpringBoot——配置及原理

优质博文&#xff1a;IT-BLOG-CN 一、Spring Boot全局配置文件 application.properties与application.yml配置文件的作用&#xff1a;可以覆盖SpringBoot配置的默认值。 ◀ YML&#xff08;is not a Markup Language&#xff1a;不仅仅是一个标记语言&#xff09;&#xff1…...

fiddler抓包安卓

一、打断点 1、安卓手机和电脑在同一局域网下&#xff0c;手机连接的网络开启手动代理&#xff0c;ip填写电脑ip&#xff0c;端口填写fiddler中配置的端口。 ip查看&#xff1a; 端口配置&#xff1a;tools-options-connections 2、安装证书&#xff0c;手机浏览器输入电脑ip…...

Maven 进阶学习指南---setting详解

前言 当我们在开发项目时&#xff0c;有时需要用到外部依赖组件&#xff0c;例如当我们需要 Json 序列化的时候需要用到 FastJson 组件&#xff0c;我们可以通过下载对应 jar 包加载到项目中。但当一个大的项目同时需要依赖各种各样的外部服务&#xff0c;就存在着配置繁琐、依…...

人工智能与我们的生活

人工智能对我们的生活影响有多大 1. 人工智能的领域 人工智能涉及的领域广泛&#xff0c;包括但不限于&#xff1a; a. 医疗保健领域 人工智能在医疗诊断、药物研发、患者管理等方面发挥了重要作用。医疗影像分析、基因组学研究等都受益于人工智能技术&#xff0c;为医学领…...

前端将blob转换为可下载的url及下载

一.转换 //将blob转换为url const changeBlobToUrl blobData > {return new Promise(resolve > {//创建Blob对象const blob new Blob([blobData])// 创建FileReader对象const reader new FileReader()reader.onload function (e) {resolve(e.target.result)}// 使用F…...

LVS-DR实验

实验前准备 DR服务器&#xff1a;192.168.188.11 192.168.188.15 NFS服务器&#xff1a;192.168.188.14 Web服务器1&#xff1a;192.168.188.12 Web服务器2&#xff1a;192.168.188.13 Vip&#xff1a;192.168.188.188 客户端&#xff1a;192.168.188.200 配置负载均衡调度…...

MYSQL索引使用注意事项

索引使用注意事项&#xff1a; 1.索引列运算 不要在索引列上进行运算操作&#xff0c;否则索引将失效&#xff1b; 2.字符串不加引号 字符串类型使用时&#xff0c;不加引号&#xff0c;否则索引将失效&#xff1b; 3.模糊查询 如果仅仅是尾部模糊匹配&#xff0c;索引将不会失…...

深入理解Java中的String、StringBuilder和StringBuffer(每天一个技术点,第一天)

大家好&#xff0c;我是你们的博主每天一个技术点。今天&#xff0c;我们将探讨Java中的一个重要主题&#xff1a;String、StringBuilder和StringBuffer。这些类在Java编程中无处不在&#xff0c;但它们之间的区别和用法可能并不是所有人都清楚。所以&#xff0c;让我们深入了解…...

PHP逻辑运算符学习资料

PHP逻辑运算符 在PHP中&#xff0c;逻辑运算符用于组合和比较不同的逻辑条件。下面是PHP中常用的逻辑运算符示例&#xff1a; 1. 与运算符&#xff08;&& 或 and&#xff09; $age 25; $isStudent true;if ($age > 18 && $isStudent) {echo "You …...

深入解析CPU工作原理与细节

计算机是现代社会中不可或缺的工具&#xff0c;而CPU&#xff08;中央处理器&#xff09;则是计算机的核心组件。CPU负责执行指令和控制计算机的各种操作&#xff0c;它的性能直接影响着计算机的速度和效率。 1. CPU的基本结构 CPU通常由以下几个主要组成部分构成&#xff1a…...

计算机网络(超详解!) 第二节 物理层(上)

1.物理层的基本概念 物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流&#xff0c;而不是指具体的传输媒体。 物理层的作用是要尽可能地屏蔽掉不同传输媒体和通信手段的差异。 用于物理层的协议也常称为物理层规程(procedure)。 2.物理层的主要任务 主要…...

c++ 打怪升级

内联函数 调用时&#xff0c;直接会把代码拷贝到调用处&#xff1b; 函数指针 可以类比数组 //内联函数 调用时直接将代码拷贝过来 inline const string& longerStr(const string &s1,const string & s2){return s1.size()>s2.size() ? s1:s2; }int main(i…...

代码随想录第十三天(一刷C语言)|翻转二叉树对称二叉树

创作目的&#xff1a;为了方便自己后续复习重点&#xff0c;以及养成写博客的习惯。 一、翻转二叉树 ledcode题目&#xff1a;https://leetcode.cn/problems/invert-binary-tree/ AC代码&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int …...

Temu已成拼多多第二曲线

11月28日&#xff0c;拼多多公布最新一季业绩报告。三季度&#xff0c;该集团实现营收688.4亿元&#xff0c;同比增长93.9%&#xff1b;实现美国通用会计准则口径净利润155.4亿元&#xff0c;净利润率为22.6%。相比市场此前预测的营收537.7亿元、经调整净利润129.74亿元&#x…...

vue+el-tooltip 封装提示框组件,只有溢出才提示

效果 封装思路 通过控制el-tooltip的disabled属性控制是否提示通过在内容上绑定mouseenter事件监听内容宽度和可视宽度&#xff0c;判断内容是否溢出 封装代码 <template><div style"display: flex" class"column-overflow"><el-tooltip…...

GAN:PacGAN-生成对抗网络中两个样本的威力

论文&#xff1a;https://arxiv.org/pdf/1712.04086.pdf 代码&#xff1a;GitHub - fjxmlzn/PacGAN: [NeurIPS 2018] [JSAIT] PacGAN: The power of two samples in generative adversarial networks 发表&#xff1a;2016 一、摘要 1&#xff1a;GAN最重大的缺陷是&#xf…...

【面试】typescript

目录 为什么用TypeScript&#xff1f; TS和JS的区别 控制类成员可见性的访问关键字&#xff1f; public protected&#xff09;&#xff0c;该类及其子类都可以访问它们。 但是该类的实例无法访问。 私有&#xff08;private&#xff09;&#xff0c;只有类的成员可以访问…...

AI算法工程师必学的Python库:这10个库,AI开发必备

对于软件测试从业者来说&#xff0c;随着人工智能技术在测试领域的渗透越来越深——从自动化测试用例生成到缺陷智能预测&#xff0c;从测试结果分析到测试环境智能化调度&#xff0c;掌握AI开发的核心工具链已经成为从功能测试向AI测试开发、智能化测试转型的核心竞争力。Pyth…...

ImageSearch:基于.NET 10的本地硬盘千万级图库以图搜图工具完全指南

ImageSearch&#xff1a;基于.NET 10的本地硬盘千万级图库以图搜图工具完全指南 【免费下载链接】ImageSearch 基于.NET10的本地硬盘千万级图库以图搜图案例Demo和图片exif信息移除小工具分享 项目地址: https://gitcode.com/gh_mirrors/im/ImageSearch ImageSearch是一…...

Meteor-Files深度解析:DDP与HTTP传输协议的终极对比指南

Meteor-Files深度解析&#xff1a;DDP与HTTP传输协议的终极对比指南 【免费下载链接】Meteor-Files &#x1f680; Upload files via DDP or HTTP to ☄️ Meteor server FS, AWS, GridFS, DropBox or Google Drive. Fast, secure and robust. 项目地址: https://gitcode.com…...

ComfyUI-Manager终极指南:如何快速安装和管理ComfyUI自定义节点

ComfyUI-Manager终极指南&#xff1a;如何快速安装和管理ComfyUI自定义节点 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable vari…...

Construct3新手避坑指南:用《幽灵射手》教程搞定你的第一个射击游戏(附B站效果演示)

Construct3新手避坑指南&#xff1a;用《幽灵射手》教程搞定你的第一个射击游戏第一次打开Construct3的《幽灵射手》教程时&#xff0c;我盯着满屏的绿色幽灵和事件表发呆了半小时。为什么子弹穿过了幽灵却没造成伤害&#xff1f;为什么游戏运行三秒后就卡成幻灯片&#xff1f;…...

3分钟快速修复洛雪音乐播放问题:六音音源完整指南

3分钟快速修复洛雪音乐播放问题&#xff1a;六音音源完整指南 【免费下载链接】New_lxmusic_source 六音音源修复版 项目地址: https://gitcode.com/gh_mirrors/ne/New_lxmusic_source 你是否曾经在升级洛雪音乐后&#xff0c;发现心爱的歌单突然变成了灰色&#xff0c;…...

VMware Workstation Pro 17上快速体验Rocky Linux 8.6:从镜像下载到命令行登录的5分钟极简流程

VMware Workstation Pro 17极速部署Rocky Linux 8.6实战指南 当技术爱好者们想要快速搭建一个Linux测试环境时&#xff0c;繁琐的安装流程往往会消耗大量时间。本文将展示如何在VMware Workstation Pro 17上&#xff0c;用最短时间完成Rocky Linux 8.6的部署&#xff0c;从零开…...

探索dpt-tools:突破索尼电子纸设备系统限制的技术突破

探索dpt-tools&#xff1a;突破索尼电子纸设备系统限制的技术突破 【免费下载链接】dpt-tools dpt systems study and enhancement 项目地址: https://gitcode.com/gh_mirrors/dp/dpt-tools 在数字阅读与笔记领域&#xff0c;索尼DPT系列电子纸设备以其卓越的显示技术和…...

C盘告急别慌!保姆级教程:把WSL2的Ubuntu 20.04完整搬家到D盘(附恢复普通用户权限)

C盘告急别慌&#xff01;保姆级教程&#xff1a;把WSL2的Ubuntu 20.04完整搬家到D盘&#xff08;附恢复普通用户权限&#xff09;当C盘空间不足的红色警告频繁弹出&#xff0c;而你的WSL2 Ubuntu系统正占用着宝贵空间时&#xff0c;这篇文章将成为你的救星。不同于常规安装教程…...

26年5月系分论文~写作思路深度拆解

Hello 我是方才&#xff0c;15人研发leader、5年团队管理&架构经验。文末&#xff0c;附26年10月最新软考备考资料备考交流群&#xff0c;群友可享受每月直播哟&#xff01;2605系分论文分析今天系分和架构均已考完&#xff0c;方才先预祝所有考生均能逢考必过&#xff01;…...