NET问答: 有最干净利落的读写文件方式吗?
咨询区
ApprenticeHacker:
在 C# 中有很多种读写文件的方式 (文本文件,非二进制)。
为了践行 do more, write less
的思想,现寻找一种最简单最少代码量的方式,因为在我的项目中有太多的功能需要读写文件了。
回答区
vc 74:
可以使用 C# 中的 File.ReadAllText
和 File.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#的早期,都是通过 StreamWriter
和 StreamReader
来操控文件,参考代码如下:
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 系列静态扩展方法后,再也回不去了。。。????????????
不过奇怪也没啥奇怪的,底层大多还是 StreamWriter
和 StreamReader
的封装而已,如下图所示:
原文链接:https://stackoverflow.com/questions/7569904/easiest-way-to-read-from-and-write-to-files
NET问答: 有最干净利落的读写文件方式吗?相关推荐
- VIVADO仿真读写文件方式
VIVADO仿真读文件方式 大部分编译器和仿真器在读文件的时候需要预先打开文件.在VIVADO自带仿真器中,读文件不需要预先打开要读取的文件,也不需要将文件加入VIVADO工程内部,只需要利用系统函数 ...
- python怎么写文件-Python读写文件
一.读写文件方式 在当前python文件同级目录下存在一个名为file的文件,内容如下 1.使用with open读取文件 defread_file(filepath): with open(file ...
- Go 学习笔记(49)— Go 标准库之 io/ioutil(读写文件、获取目录下的文件和子目录、创建临时目录和文件)
1. 简要概述 import "io/ioutil" 包 io/ioutil 实现一些 I/O 实用程序函数. 2. 相关函数 2.1 func ReadAll func Read ...
- c语言格式化写入文件大小,利用C语言格式化读写文件
"在C语言中进行格式化读写文件"按照字面意思通常大家都会理解为将读写文件进行格式化的操作,那么到底我们是不是真的将读写文件进行格式化的操作呢?下面课课家笔者就为大家简单介绍C语言中 ...
- python生成试卷制卷系统_Python 读写文件 小应用:生成随机的测验试卷文件
去年学习了python的读写文件部分,了解了python读写的常用模块os.shelve,今天准备把课后作业试着自己做一下 目标:1)生成35份试卷.每个试卷有50道选择题 2)为了防止有学生作弊,需 ...
- java.io几种读写文件的方式
一.Java把这些不同来源和目标的数据都统一抽象为数据流. Java语言的输入输出功能是十分强大而灵活的. 在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作 ...
- C#读写文件:编码和转换(string和byte[]转换为例)
读写配置文件不单单将内容write或read,有时也会进行内容编码转换等操作. 例 string和byte[]转换 这里是我曾经碰到过的问题,当时的情况是配置文件是一个移动设备提供的,主要是由移动设备 ...
- C# 读写文件方法总结
使用FileStream读写文件 文件头: using System; using System.Collections.Generic; using System.Text; using S ...
- python以读写方式打开文件_python读写文件操作详细介绍【传智播客】
Python文件的打开或创建可以使用函数open().该函数可以指定处理模式,设置打开的文件为只读.只写或可读写状态.open()的声明如下所示. open(file, mode='r', buffe ...
最新文章
- hunnu---11547 你的组合数学学得如何?
- 计算机精英协会考核题 —— 第二题:蛇形填数
- java 代码冲突检测_Java中常见的代码冲突
- 双重检查锁实现单例模式的线程安全问题
- 离散系数的计算公式_如何求不同变量之间的离散程度
- python 安装中的错误解决
- Linux下批量替换文件内容和文件名(转)
- python访问组策略_python 组策略
- php将值作为数组,php – 如何将CSV解析为数组,并将第一个值作为键?
- mysql 8.0 ~ innodb与变量优化
- 全球及中国硬盘用基板行业发展前景预测与投资战略规划研究报告2022-2028年
- 将一个数组划分成总和相等的两部分(分割数组)
- 小米手机业务取得增长,似乎从华为手机在海外受挫中获益
- win7java浏览器崩溃_浏览器崩溃怎么办,教你win7系统浏览器崩溃的应对办法
- layui搭建后台管理系统
- Spring的Bean意义
- 一对一直播源码、一对一聊天app源码前端后台功能说明
- NB-IOT的背景基础知识
- hexo如何进行hexo的博客编写
- 2018年NOIP普及组完善程序题2—右侧第一个更大值
热门文章
- testng接口自动化测试_Java+Maven+TestNG接口(API)自动化测试教程(10) 使用 Jenkins 构建自动化测试持续集成...
- [function.require]: Failed opening required 杰奇cms
- Ubuntu下Authentication token manipulation error或者Authentication Failure解决办法
- java-回调机制详解
- Oracle B-Tree Index 原理
- python3安装mysqlclient_Python3 安装mysqlclient错误处理(MAC版)
- 小程序 iphone和安卓_如何阻止iPhone和iPad应用程序要求评级
- java cas volatile_每日一个知识点:Volatile 和 CAS 的弊端之总线风暴
- mysql时间字段条件查询_mysql 查询 时间作为查询条件
- 苹果mac闪退_自从Mac有了WPS,从此和双系统说再见!