FileStream
static void Main()
{
try
{
FileStream fs = new FileStream(@"C:\artists\log.txt",
FileMode.OpenOrCreate, FileAccess.ReadWrite);
byte[ ] alpha = new byte[6] { 65, 66, 67, 68, 69, 70 };
foreach (byte b in alpha)
{
fs.WriteByte(b);
}
fs.Position = 0;
for (int i = 0; i < fs.Length(); i++)
{
Console.Write((char)fs.ReadByte());
}
fs.Close();
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
}
StreamReader
static void Main(string[] args)
{
DataTable dt = new DataTable();//新建空的表格
dt.Columns.Add("id", typeof(string));//增加列
dt.Columns.Add("x", typeof(string));
dt.Columns.Add("y", typeof(string));
StreamReader sr = new StreamReader(filepath,
Encoding.GetEncoding("gb2312"));
string oneline;
while (!sr.EndOfStream)
{
oneline = sr.ReadLine(); //逐行读取
string[] a = oneline.Split(',');//分割
DataRow dr =dt.NewRow();
dr[0] = a[0];
dr[1] = a[1];
dr[2] = a[2];
dt.Rows.Add(dr);
}
sr.Close();
this.dataGridView1.DataSource = dt;
}
补:
- 正则表达式-替换
string result = String.Empty;
string str = “Just Test the Method”;
result = Regex.Replace(str, “\s{2,}”, " “);
//s{2,} 中的s表示空格,数字2表示两个或以上的空格 ,替换为后面的” "一个空格
StreamWriter
Public StreamWriter(string path,bool append, Encoding encoding);
- append为false,则该文件被改写。
- append为true,数据被追加到文件中,若没有则创建。
Directory类
Path类
DirectoryInfo类
- 常见文件夹操作
//获取当前应用程序的路径
Console.WriteLine(Directory.GetCurrentDirectory());
//获取当前计算机所有逻辑驱动器的名称
string[] drvs=Directory.GetLogicalDrives();
foreach(string drv in drvs)
{
Console.WriteLine(drv);
}
//新建文件夹
Directory.CreateDirectory("c:\\mydirectory");
//删除文件夹
Directory.Delete("C:\\mydirectory",true);
//移动文件夹
Directory.Move("c:\\temp","d:\\qq\\temp");
//显示所有子文件
DirectoryInfo dInfo=new DirectoryInfo("c:\\WinNT");
DirectoryInfo[] dirs = dInfo.GetDirectories();
foreach(DirectoryInfo dir in dirs)
{
Console.WriteLine(dir.Name);
}
//显示文件夹中的文件
DirectoryInfo dInfo=new DirectoryInfo("c:\\WinNT");
FileInfo[] fs = dInfo.GetFiles();
foreach(FileInfo f in dirs)
{
Console.WriteLine(f.Name);
}
//显示文件夹中的文件(指定扩展名)
DirectoryInfo dInfo=new DirectoryInfo("c:\\WinNT");
FileInfo[] fs = dInfo.GetFiles("*.exe");
foreach(FileInfo f in dirs)
{
Console.WriteLine(f.Name);
}
//复制文件
File.Copy("c:\\temp.txt", "D:\\temp.txt",true);
//删除文件
File.Delete("c:\\temp.txt");
//确定文件是否存在
bool b=File.Exists("c:\\temp.txt");
//获取文件大小
FileInfo f=new FileInfo("文件名");
long leng=f.Length;
//获取文件的扩展名
FileInfo f=new FileInfo("文件名");
string ext=f.Extension;
string ext2=Path.GetExtension("路径全名");//两种方式
//获取路径中的文件名
FileInfo f=new FileInfo("文件名");
string name=f.name;
string name22=Path.GetFileName("路径全名");//两种方式
- 获取文件夹信息
DirectoryInfo dInfo=new DirectoryInfo (“c:\Win”);
信息 | 操作 |
---|---|
最近访问时间 | dInfo.LastAccessTime.ToLongDateString() |
创建时间 | dInfo.CreationTime.ToLongTimeString() |
上级文件夹 | dInfo.Parent.Name() |
有子文件夹 | dInfo.GetDirectories().Length.ToString() |
包含文件 | dInfo.GetFiles().Length.ToString() |