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

安防网站建设优点免费创建网站软件

安防网站建设优点,免费创建网站软件,图片切换wordpress,企信宝文件I/O C#提供了多种方式来读写文件,主要通过System.IO命名空间中的类来实现,下方会列一些常用的类型: StreamReader/StreamWriter:用于以字符为单位读取或写入文本文件。 BinaryReader/BinaryWriter:用于以二进制格…

文件I/O

C#提供了多种方式来读写文件,主要通过System.IO命名空间中的类来实现,下方会列一些常用的类型:

  • StreamReader/StreamWriter:用于以字符为单位读取或写入文本文件。

  • BinaryReader/BinaryWriter:用于以二进制格式读取或写入基本数据类型。

  • FileStream:提供对文件的基本读写操作,并支持随机访问文件。

  • FileDirectory 类:提供了一组静态方法,用于创建、复制、删除、移动文件和目录,以及检查文件和目录是否存在等。

使用StreamReader和StreamWriter
using System;
using System.IO;class Program
{static void Main(){string path = "example.txt";// 写入文本到文件using (StreamWriter writer = new StreamWriter(path)){writer.WriteLine("Hello, world!");}// 从文件读取文本using (StreamReader reader = new StreamReader(path)){string content = reader.ReadToEnd();Console.WriteLine(content);}}
}
使用BinaryReader和BinaryWriter
using System;
using System.IO;class Program
{static void Main(){string path = "example.dat";// 创建或覆盖文件,并准备写入using (BinaryWriter writer = new BinaryWriter(File.Open(path, FileMode.Create))){writer.Write(123);  // 写入整数writer.Write(3.14f); // 写入单精度浮点数writer.Write("Hello, World!"); // 写入字符串}Console.WriteLine("Data written to file.");}
}
using System;
using System.IO;class Program
{static void Main(){string path = "example.dat";// 打开文件进行读取using (BinaryReader reader = new BinaryReader(File.Open(path, FileMode.Open))){int intValue = reader.ReadInt32(); // 读取整数float floatValue = reader.ReadSingle(); // 读取单精度浮点数string stringValue = reader.ReadString(); // 读取字符串Console.WriteLine($"Integer Value: {intValue}");Console.WriteLine($"Float Value: {floatValue}");Console.WriteLine($"String Value: {stringValue}");}}
}

注意事项

  • 顺序:当你使用 BinaryWriter 写入数据时,必须记住写入数据的顺序,因为在使用 BinaryReader 读取数据时,你也需要按照相同的顺序来读取这些数据。

  • 编码:默认情况下,BinaryWriter 使用 UTF-8 编码写入字符串。如果你需要不同的编码,可以在创建 BinaryWriter 实例时指定编码方式。

  • 异常处理:在实际应用中,你应该添加适当的错误处理代码(如 try-catch 块),以便处理可能发生的 I/O 错误或其他异常情况。

通过 BinaryReaderBinaryWriter,你可以高效地对基本数据类型进行二进制格式的读写操作,这对于处理大量数据或者需要精确控制数据存储格式的情况特别有用。然而,请注意,对于复杂的对象序列化,你可能需要考虑其他方法,比如 XML 或 JSON 序列化。

使用FileStream
创建和写入文件
using System;
using System.IO;
using System.Text;class Program
{static void Main(){string path = "example.txt";string content = "Hello, World!";// 使用 FileStream 创建或覆盖文件,并准备写入using (FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write)){byte[] info = new UTF8Encoding(true).GetBytes(content);// 将字节数组写入文件fs.Write(info, 0, info.Length);}Console.WriteLine("Data written to file.");}
}
读取文件
using System;
using System.IO;class Program
{static void Main(){string path = "example.txt";// 使用 FileStream 打开文件进行读取using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read)){byte[] b = new byte[1024];UTF8Encoding temp = new UTF8Encoding(true);// 循环读取文件中的所有数据while (fs.Read(b, 0, b.Length) > 0){Console.WriteLine(temp.GetString(b));}}}
}
使用FileDirectory
常用的 File 方法包括:
  • Create: 创建或覆盖指定路径上的文件。

  • Copy: 将现有文件复制到新位置,可以选择是否覆盖目标位置的现有文件。

  • Delete: 删除指定的文件。

  • Exists: 判断指定的文件是否存在。

  • Move: 移动指定的文件到新位置。

  • ReadAllBytes, ReadAllLines, ReadAllText: 读取文件的内容为字节数组、字符串数组或单个字符串。

  • WriteAllBytes, WriteAllLines, WriteAllText: 将字节数组、字符串数组或单个字符串写入文件。

string sourceFile = @"C:\source\example.txt";
string destFile = @"D:\destination\example.txt";if (!File.Exists(destFile))
{File.Copy(sourceFile, destFile, true);
}
常用的 Directory 方法包括:
  • CreateDirectory: 创建指定路径中的所有目录和子目录。

  • Delete: 删除指定的目录及其内容。

  • Exists: 判断指定的目录是否存在。

  • GetDirectories: 获取指定目录中的子目录名称。

  • GetFiles: 获取指定目录中的文件名称。

  • Move: 将指定的目录及其内容移动到新位置。

  • EnumerateDirectories, EnumerateFiles: 遍历目录或文件集合,支持延迟执行。

string newDirPath = @"C:\newfolder";if (!Directory.Exists(newDirPath))
{Directory.CreateDirectory(newDirPath);
}
FileDirectory注意事项:

当使用 FileDirectory 类的静态方法可能更方便。但是,如果计划多次重用某个对象,考虑使用 FileInfoDirectoryInfo 类的实例方法,因为这可以避免重复的安全检查并可能提高性能。

请注意,尽管 BinaryFormatter 曾经是一个流行的序列化工具,但出于安全性和兼容性的考虑,在新的开发工作中应避免使用它,而转向其他更安全的替代方案,如 JSON 序列化。不过,这一建议与 FileDirectory 类的主要用途并不直接相关,这里只是作为补充信息提供。

http://www.tj-hxxt.cn/news/82644.html

相关文章:

  • 哈尔滨营销型网站建设品牌公关案例
  • 请问我做吉利网站吉利啊丽水百度seo
  • 文明网站建设方案及管理制度seo关键词挖掘
  • 抖音推广方案和推广方式seo推广培训费用
  • 现在主流的网站开发语言公司网站seo公司
  • 推广淘特一个新人多少钱吉林seo管理平台
  • html社交网站模板百度推广渠道户
  • 杭州英文网站建设百度关键词推广方案
  • 电商网站分析报告怎么做2021近期时事新闻热点事件简短
  • 新浪网站是什么程序做的云搜索app下载
  • 济南汽车网站设计网络推广外包内容
  • WordPress仿牌免费手机优化大师下载安装
  • 长沙网站搭建公司联系方式网站seo优化建议
  • 什么是网络设计方案网络设计的原则有哪些佛山网站优化服务
  • wordpress做单页销售网站百度一下进入首页
  • 关系的网站站长工具域名解析
  • 沧州营销型网站建设百度快照投诉
  • 阿里云做网站可以免备案吗seo搜索引擎优化是
  • 企业网站 免费整合营销策划
  • 广州商城网站建设品牌运营公司
  • wordpress 幻灯片加数字seo搜索是什么意思
  • 专业做网站建设 昆山北京、广州最新发布
  • 找个网站看看平台推广员是做什么的
  • 网站建设 网站推广营销网点机构号
  • 微信上做任务让你注册彩票网站网站制作软件
  • wordpress建站前端百度投票人气排行榜入口
  • 一个服务器做多个网站优化关键词排名哪家好
  • 网站制作体会网络营销策划案范本
  • 福鼎网站开发搜索引擎优化的含义和目标
  • 建设一个机械公司网站多少钱长沙关键词快速排名