C# 文件读取(一)
1. 读写文件的步骤:
创建一个文件流 -- 创建相应的读写器 -- 执行读写操作 -- 关闭读写器 -- 关闭文件流
创建一个文件流: FileStream objfs = new FileStream(文件的路径 , 文件打开模式);
文件的打开模式: FileMode 是一个枚举值,此处略去
创建文件的同事也可以设置权限
创建读写器: StreamReader objsr = new StreamReader(objfs, Encoding.UTF8);
StreamWriter objsw = new StreamWriter(objfs, Encoding.UTF8);
Enoding 是为了解决乱码问题
读写操作: 读: objsr.ReadToEnd();
写:objsw.Write(content);
关闭读写器: objsr.Close();
objsw.Close();
关闭文件流: objfs.Close();
2. File类
提供操作文件的各种方法。
|
方法 |
说明 |
|
bool Exists(string path) |
用于检查指定文件是否存在,该方法返回一个布尔值 |
|
void Copy(string sourceFileName, |
将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定路径中新建一个文件 |
|
void Move (string |
将指定文件移动到一个新的路径 |
|
void |
删除指定的文件,如果指定的文件不存在,则不引发异常 |
3. Directory
类提供对文件夹的移动、删除等操作
|
方法 |
说明 |
|
bool |
用于检查指定文件夹在磁盘上是否存在 |
|
void |
用于将文件或目录及其内容移到新位置 |
|
void Delete(string path, |
删除指定目录,如果bool指定true,则删除子目录中的所有目录内容 |
|
void |
从指定路径删除空目录 |
3. FileInfo类
由于File类的静态方法在使用时都会进行安全检查,所以如果想要多次使用某个文件对象,可以考虑使用FileInfo类相应的实例方法,因为并不总是需要安全检查
|
属性/方法 |
说明 |
|
Exists |
用于检查指定文件是否存在,返回一个布尔值 |
|
Extension |
获取表示文件扩展名部分的字符串 |
|
Name |
获取文件名 |
|
FullName |
获取目录或文件的完整目录 |
|
FileInfo CopyTo(string) |
将现有文件复制到新文件,不允许覆盖现有文件 |
|
void Delete() |
永久删除文件 |
|
void |
将指定文件移到新位置 |
4. DirectoryInfo类
如果打算多次重用某个目录对象,可以考虑使用DirectoryInfo类的实例方法
|
方法 |
说明 |
|
DirectoryInfo[ ] GetDirectories() |
返回当前目录的子目录对象数组 |
|
FileInfo[ ] GetFiles() |
返回当前目录下文件列表(FileInfo对象数组) |
备注:文件(file)与流(stream)
文件,是在各种媒介上永久存储的数据的有序集合,它是一种进行数据读写操作的基本对象。
流,从概念上讲,非常类似于单独的磁盘文件,它也是进行数据读取操作的基本对象,流为我们提供了连续的字节流存储空间。
File类,是一个静态类,主要是来提供一些函数库用的。
静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件。
C# 文件读取(一)的更多相关文章
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- php xml 文件读取 XMLReader
php xml 文件读取 <?php /** $xmlString = '<xml> <persons count="10"> <person ...
- 1-2 nodejs小节 文件读取
1.表达式 在命令行输入 node回车后,可以在后边输入相应的表达式,进行运算操作 2.阻塞文件读取 var data=fs.readFileSync('input.txt', 'utf-8') ...
- 详解Js中文件读取机制
前言,文件读取是提高应用体验度的必须接口,应用场景中需求很频繁. Js处理文件读取,由于处于安全方面的考虑,在2000年以前,都是以“<input type="file"&g ...
- C# 文件操作 把文件读取到字节数组
string zipfile = "c:\\a.zip"; //方法1 FileStream fs = new FileStream(zipfile, FileMode.Open) ...
- H5学习系列之文件读取API--本文转自http://blog.csdn.net/jackfrued/article/details/8967667
HTML5定义了FileReader作为文件API的重要成员用于读取文件,根据W3C的定义,FileReader接口提供了读取文件的方法和包含读取结果的事件模型. FileReader的使用方式非常简 ...
- 应用服务器Glassfish任意文件读取漏洞
catalogue . 前言和技术背景 . Glassfish安装配置 . 漏洞利用 . 漏洞缓解(修复) 1. 前言和技术背景 0x1: GlassFish是什么 GlassFish 是用于构建 J ...
- golang 文件读取
Golang 的文件读取方法很多,刚上手时不知道怎么选择,所以贴在此处便后速查. 一次性读取 小文件推荐一次性读取,这样程序更简单,而且速度最快. 复制代码 代码如下: func ReadAll(fi ...
- Python编码/文件读取/多线程
Python编码/文件读取/多线程 个人笔记~~记录才有成长 编码/文件读取/多线程 编码 常用的一般是gbk.utf-8,而在python中字符串一般是用Unicode来操作,这样才能按照单个字 ...
- [Python] 中文编码问题:raw_input输入、文件读取、变量比较等str、unicode、utf-8转换问题
最近研究搜索引擎.知识图谱和Python爬虫比较多,中文乱码问题再次浮现于眼前.虽然市面上讲述中文编码问题的文章数不胜数,同时以前我也讲述过PHP处理数据库服务器中文乱码问题,但是此处还是准备简单做下 ...
随机推荐
- java的Random
首先,Point类 public class Point { int x, y; public Point(int x, int y) { this.x = x; this.y = y; } bool ...
- [LeetCode]题解(python):062 Unique path
题目来源 https://leetcode.com/problems/unique-paths/ A robot is located at the top-left corner of a m x ...
- 关于lnmp下搭thinkPHP无法找到指定静态页面
我在lnmp 下架了一个thinkPHP框架,非常奇怪,在环境都配置好后,我在url里输入localhost:10007/index.php/member/login,正常来说应该显示login.ht ...
- http://blog.csdn.net/maosidiaoxian/article/details/40109337
http://blog.csdn.net/maosidiaoxian/article/details/40109337
- ucenter 客户端里的自动方法
<?php /** * UCenter 应用程序开发 Example * * UCenter 简易应用程序,应用程序有自己的用户表 * 使用到的接口函数: * uc_authcode() 可选, ...
- Android 用Animation-list实现逐帧动画
第一步:先上图片素材,以下素材放到res/drawable目录下: http://blog.csdn.net/aminfo/article/details/7847761 图片素材: 文件名称: ic ...
- Java List操作
一.List:.有顺序以线性方式存储,可以存放重复对象 线程安全方法:List list = Collections.synchronizedList(new LinkedList(...)); ...
- 将hadoop源代码导入eclipse
1. 安装JDK,eclipse,下载hadoop源代码并解压到某一个目录. 2. 安装maven,将bin目录添加到PATH环境变量中. 3. 安装protobuf2.5.0,将protoc-2.5 ...
- iOS - (调用系统本机发送短信功能)
今天处理一个订单详情的界面,在订单详情页面上有联系方式(电话号码),在电话号码的右边有两图片,一个是电话样式的,一个是短信样式的,做为一名程序员(号称攻城师)一眼看下去就应该是一个 button,而不 ...
- linux 命令进阶
1. ls –i -i, --inode 显示每个文件的inode 号 查看inode 可以用于 同一个classloader加载同名class时,是以先加载到的class为准, ...