咨询区

  • ApprenticeHacker

在 C# 中有很多种读写文件的方式 (文本文件,非二进制)。

为了践行 do more, write less 的思想,现寻找一种最简单最少代码量的方式,因为在我的项目中有太多的功能需要读写文件了。

回答区

  • vc 74

可以使用 C# 中的 File.ReadAllTextFile.WriteAllText

MSDN 上提供了如下的例子。


// Create a file to write to.
string createText = "Hello and Welcome" + Environment.NewLine;
File.WriteAllText(path, createText);...// Open the file to read from.
string readText = File.ReadAllText(path);

  • Roland

可以通过 扩展方法 的方式实现最少代码的写法,我敢打赌绝对是最简单的,做法就是在 string 上做扩展,具体用什么名字就取决于个人喜好了。


using System.IO;//File, Directory, Pathnamespace Lib
{/// <summary>/// Handy string methods/// </summary>public static class Strings{/// <summary>/// Extension method to write the string Str to a file/// </summary>/// <param name="Str"></param>/// <param name="Filename"></param>public static void WriteToFile(this string Str, string Filename){File.WriteAllText(Filename, Str);return;}// of course you could add other useful string methods...}//end class
}//end ns

有了扩展方法后,用起来就非常简单了。


using Lib;//(extension) method(s) for string
namespace ConsoleApp_Sandbox
{class Program{static void Main(string[] args){"Hello World!".WriteToFile(@"c:\temp\helloworld.txt");return;}}//end class
}//end ns

看起来是不是非常美好,所以我决定分享给你们啦,祝使用愉快。

点评区

小编在学习C#的早期,都是通过 StreamWriterStreamReader 来操控文件,参考代码如下:

static void Main(string[] args){using (StreamWriter writetext = new StreamWriter("write.txt")){writetext.WriteLine("writing in text file");}using (StreamReader readtext = new StreamReader("readme.txt")){string readText = readtext.ReadLine();}}

后来莫名其妙的知道了 File 下居然还有 Read 和 Write 系列静态扩展方法后,再也回不去了。。。????????????

不过奇怪也没啥奇怪的,底层大多还是 StreamWriterStreamReader 的封装而已,如下图所示:

原文链接:https://stackoverflow.com/questions/7569904/easiest-way-to-read-from-and-write-to-files

NET问答: 有最干净利落的读写文件方式吗?相关推荐

  1. VIVADO仿真读写文件方式

    VIVADO仿真读文件方式 大部分编译器和仿真器在读文件的时候需要预先打开文件.在VIVADO自带仿真器中,读文件不需要预先打开要读取的文件,也不需要将文件加入VIVADO工程内部,只需要利用系统函数 ...

  2. python怎么写文件-Python读写文件

    一.读写文件方式 在当前python文件同级目录下存在一个名为file的文件,内容如下 1.使用with open读取文件 defread_file(filepath): with open(file ...

  3. Go 学习笔记(49)— Go 标准库之 io/ioutil(读写文件、获取目录下的文件和子目录、创建临时目录和文件)

    1. 简要概述 import "io/ioutil" 包 io/ioutil 实现一些 I/O 实用程序函数. 2. 相关函数 2.1 func ReadAll func Read ...

  4. c语言格式化写入文件大小,利用C语言格式化读写文件

    "在C语言中进行格式化读写文件"按照字面意思通常大家都会理解为将读写文件进行格式化的操作,那么到底我们是不是真的将读写文件进行格式化的操作呢?下面课课家笔者就为大家简单介绍C语言中 ...

  5. python生成试卷制卷系统_Python 读写文件 小应用:生成随机的测验试卷文件

    去年学习了python的读写文件部分,了解了python读写的常用模块os.shelve,今天准备把课后作业试着自己做一下 目标:1)生成35份试卷.每个试卷有50道选择题 2)为了防止有学生作弊,需 ...

  6. java.io几种读写文件的方式

    一.Java把这些不同来源和目标的数据都统一抽象为数据流. Java语言的输入输出功能是十分强大而灵活的. 在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作 ...

  7. C#读写文件:编码和转换(string和byte[]转换为例)

    读写配置文件不单单将内容write或read,有时也会进行内容编码转换等操作. 例 string和byte[]转换 这里是我曾经碰到过的问题,当时的情况是配置文件是一个移动设备提供的,主要是由移动设备 ...

  8. C# 读写文件方法总结

    使用FileStream读写文件   文件头:   using System; using System.Collections.Generic; using System.Text; using S ...

  9. python以读写方式打开文件_python读写文件操作详细介绍【传智播客】

    Python文件的打开或创建可以使用函数open().该函数可以指定处理模式,设置打开的文件为只读.只写或可读写状态.open()的声明如下所示. open(file, mode='r', buffe ...

最新文章

  1. hunnu---11547 你的组合数学学得如何?
  2. 计算机精英协会考核题 —— 第二题:蛇形填数
  3. java 代码冲突检测_Java中常见的代码冲突
  4. 双重检查锁实现单例模式的线程安全问题
  5. 离散系数的计算公式_如何求不同变量之间的离散程度
  6. python 安装中的错误解决
  7. Linux下批量替换文件内容和文件名(转)
  8. python访问组策略_python 组策略
  9. php将值作为数组,php – 如何将CSV解析为数组,并将第一个值作为键?
  10. mysql 8.0 ~ innodb与变量优化
  11. 全球及中国硬盘用基板行业发展前景预测与投资战略规划研究报告2022-2028年
  12. 将一个数组划分成总和相等的两部分(分割数组)
  13. 小米手机业务取得增长,似乎从华为手机在海外受挫中获益
  14. win7java浏览器崩溃_浏览器崩溃怎么办,教你win7系统浏览器崩溃的应对办法
  15. layui搭建后台管理系统
  16. Spring的Bean意义
  17. 一对一直播源码、一对一聊天app源码前端后台功能说明
  18. NB-IOT的背景基础知识
  19. hexo如何进行hexo的博客编写
  20. 2018年NOIP普及组完善程序题2—右侧第一个更大值

热门文章

  1. testng接口自动化测试_Java+Maven+TestNG接口(API)自动化测试教程(10) 使用 Jenkins 构建自动化测试持续集成...
  2. [function.require]: Failed opening required 杰奇cms
  3. Ubuntu下Authentication token manipulation error或者Authentication Failure解决办法
  4. java-回调机制详解
  5. Oracle B-Tree Index 原理
  6. python3安装mysqlclient_Python3 安装mysqlclient错误处理(MAC版)
  7. 小程序 iphone和安卓_如何阻止iPhone和iPad应用程序要求评级
  8. java cas volatile_每日一个知识点:Volatile 和 CAS 的弊端之总线风暴
  9. mysql时间字段条件查询_mysql 查询 时间作为查询条件
  10. 苹果mac闪退_自从Mac有了WPS,从此和双系统说再见!