1. 讲解ASP.net MVC的I/O操作

新建一个控制台程序,输入代码如下

using System;
using System.IO; namespace IO
{
class Program
{
static void Main(string[] args)
{
// 判断文件是否存在
Console.WriteLine(File.Exists(@"C:\Users\ASUS\Desktop\memo\a.txt"));
// 判断目录是否存在
Console.WriteLine(Directory.Exists(@"C:\"));
// 下面例子将展示如何查找某一目录下所有exe文件的信息
// . 表示当前目录
string path = ".";
if (args.Length > )
{
// 如果需要在其他目录执行则打开控制行,之后进入项目下的Debug目录,见下图
path = args[];
}
else
{
Console.WriteLine("Directory not found");
} DirectoryInfo dir = new DirectoryInfo(path);
foreach(FileInfo f in dir.GetFiles("*.exe"))
{
string name = f.Name;
long size = f.Length;
DateTime creationTime = f.CreationTime;
Console.WriteLine(name);
Console.WriteLine(size);
Console.WriteLine(creationTime);
Console.WriteLine("------------");
}
}
}
}

File,Directory为一个静态的Class,无法实例化。

2.写入文件

using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine("already exists.");
return;
} FileStream fs = new FileStream(FILE_NAME, FileMode.Create);
BinaryWriter w = new BinaryWriter(fs); for(int i = ; i < ; i++)
{
w.Write("a");
}
w.Close();
fs.Close();
}
}
}

 

如果文件已存在,我们需要覆盖内容到里面怎么办?

using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
using(StreamWriter w = File.AppendText("test.txt"))
{
Log("Hi,is me.", w);
Log("how are u", w);
w.Close();
} }
// 方法,用于写入数据
public static void Log(string logMessage,TextWriter w)
{
w.Write("\r\nLog Entry");
w.WriteLine(":{0}", logMessage);
w.Flush(); }
}
}

using 内代码执行完毕后会自动释放资源,常用于读写文件以及连接数据库

2.读取文件

using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist!",FILE_NAME);
return;
}
// 路径,操作类别,权限
FileStream fs = new FileStream(FILE_NAME, FileMode.Open, FileAccess.Read);
BinaryReader r = new BinaryReader(fs);
       // 读取前5个字符
for(int i = ; i < ; i++)
{
Console.WriteLine(r.ReadString());
}
r.Close();
fs.Close();
} }
}

完整读取某一文件:

using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "test.txt";
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist!",FILE_NAME);
return;
}
using(StreamReader sr = File.OpenText(FILE_NAME))
{
string input;
while((input = sr.ReadLine())!=null)
{
Console.WriteLine(input);
}
Console.WriteLine("ended");
sr.Close();
}
} }
}

MVC07的更多相关文章

  1. 快速入门系列--MVC--07与HTML5移动开发的结合

    现在移动互联网的盛行,跨平台并兼容不同设备的HTML5越来越盛行,很多公司都在将自己过去的非HTML5网站应用渐进式的转化为HTML5应用,使得一套代码可以兼容不同的物理终端设备和浏览器,极大的提高了 ...

  2. MVC-07 案例1

    >>>>>ContosoUniversity网站 ------------------------------------------- 一.并发冲突 1. 为什么会并发 ...

  3. MVC-07 案例2

    二.电子商务网站 掌握该网站的开发流程和设计思路,并为数据模型中商品.商品分类,这两个类编写代码. 1.需求分析 2.数据模型规划 (1)商品类别 (2)商品信息 (3)会员信息 (4)购物车项目 ( ...

  4. MVC-07数据库

    部分6:添加数据库. 创建数据库 Visual Web Developer带有免费的SQL数据库,名为SQL Server Compact. 数据库创建: 1.右键点击解决方案资源管理器中的App_D ...

  5. 快速入门系列--MVC--01概述

    虽然使用MVC已经不少年,相关技术的学习进行了多次,但是很多技术思路的理解其实都不够深入.其实就在MVC框架中有很多设计模式和设计思路的体现,例如DependencyResolver类就包含我们常见的 ...

  6. 快速入门系列--MVC--02路由

    现在补上URL路由的学习,至于蒋老师自建的MVC小引擎和相关案例就放在论文提交后再实践咯.通过ASP.NET的路由系统,可以完成请求URL与物理文件的分离,其优点是:灵活性.可读性.SEO优化.接下来 ...

随机推荐

  1. 自定义字段从BOM带入生产用料清单

    自定义字段从BOM带入生产用料清单

  2. [LC] 430. Flatten a Multilevel Doubly Linked List

    You are given a doubly linked list which in addition to the next and previous pointers, it could hav ...

  3. Codeforces Round #525 (Div. 2)后俩题

    E:https://codeforces.com/contest/1088/problem/E dp+贪心 题目大意:选择一个k并且选择k个连通块,要求sigma a[i]/k最大,k尽量大,对于给定 ...

  4. rest framework-解析器和渲染器-长期维护

    ###############   解析器   ############### # 解析器----数据解析器, # # 前端发送了json数据,在request的body里面, # 我们需要把json ...

  5. Object.prototype.toString.call(obj).slice(8,-1)

    1.Object.prototype.toString() 该方法返回描述某个对象数据类型的字符串,如自定义的对象没有被覆盖,则会返回“[object type]”,其中,type则是实际的对象类型. ...

  6. html为什么用雪碧图的优缺点

    CSS Sprite(雪碧图/精灵图) 1          概念解释 将小图标和背景图像合并到一张图片上,然后利用css的背景/定位来显示需要显示的图片部分. 2           优点 ① 减少 ...

  7. python之处理json字符串

    一.如何从文件中读取json字符串 通过json模块可以处理json数据. 1.loads()方法 loads(json_object)将json字符串转换成dict类型. import json # ...

  8. Python实现求1-1000以内的素数

    def func(): for i in range(2,1000): # count表示被整除的次数 count = 0 for j in range(1,i+1): if i%j==0: coun ...

  9. Office 365管理员添加自定义域名

    添加自定义域,以便Office 365允许更短.更熟悉的的电子邮件或用户ID用于服务 一.Office 365小型企业版添加自定义域名 1.使用Office 365管理员账户登陆到由世纪互联运营的Of ...

  10. iOS多种刷新样式、音乐播放器、仿抖音视频、旅游App等源码

    iOS精选源码 企业级开源项目,模仿艺龙旅行App 3D立体相册,可以旋转的立方体 横竖屏切换工具,使用陀螺仪检测手机设备方向,锁屏状... Swift版Refresh(可以自定义多种样式)架构方面有 ...