当前位置: 首页 > 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;只有类的成员可以访问…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中&#xff0c;损失函数的选择对模型性能具有决定性影响。均方误差&#xff08;MSE&#xff09;作为经典的损失函数&#xff0c;在处理干净数据时表现优异&#xff0c;但在面对包含异常值的噪声数据时&#xff0c;其对大误差的二次惩罚机制往往导致模型参数…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

tauri项目,如何在rust端读取电脑环境变量

如果想在前端通过调用来获取环境变量的值&#xff0c;可以通过标准的依赖&#xff1a; std::env::var(name).ok() 想在前端通过调用来获取&#xff0c;可以写一个command函数&#xff1a; #[tauri::command] pub fn get_env_var(name: String) -> Result<String, Stri…...