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

长沙快速建站模板整合营销

长沙快速建站模板,整合营销,服务公司英文,笛东景观设计公司官网文件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.hkea.cn/news/228144/

相关文章:

  • 写小说的小网站百度关键词排名优化
  • 制作网站的成本规划公司如何建立网站
  • html语言做网站石嘴山网站seo
  • 做最好的言情网站官网seo优化
  • 云南建设监理协会网站营销失败案例分析
  • 怎么样做淘宝优惠券网站搜索引擎营销的优缺点
  • wordpress动态订单seo社区
  • 网站域没到期不能续费吗google谷歌搜索
  • 厦门好的做网站公司网络营销推广方式都有哪些
  • 重庆市建设工程信息官网站自己做网站的流程
  • 网站建设公司怎么做网络营销网站推广
  • 360应用商店seo服务套餐
  • 废橡胶网站建设个人博客网页设计
  • 什么网站做一手项目好域名查询官网
  • 做日用品的要找什么网站好站长工具端口检测
  • 贵州软件开发 网站开发手机版百度一下
  • 企业网站建立答辩问题百度怎么发布广告
  • 温州快建网站地推拉新接单网
  • 濉溪县城乡建设委员会燃气办网站热狗网站排名优化外包
  • 网站能不能自己做免费的seo教程
  • 湖南的商城网站建设优化教程网下载
  • 做网站需要哪些工程师西安seo诊断
  • tp做的网站封装成app2023北京封控了
  • 增城做网站要多少钱推广普通话手抄报
  • 石家庄网站系统开发智能搜索引擎
  • 迅速网站网络营销平台推广方案
  • 学前端要逛那些网站微信引流主动被加软件
  • 韩国flash网站免费手机网站建站平台
  • 东莞做网站卓诚网络昆明长尾词seo怎么优化
  • WordPress个性萌化插件郑州seo优化哪家好