以下代码是对文件的写入读取,图片的移动,复制
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; namespace FilesDemo { class Program { static void Main(string[] args) { //1、读取和写入D盘hello文件夹下的1.txt文件 //写入 // FileInfo file=new FileInfo("d:/hello/1.txt"); // if (file.Exists) //判断是否存在 // { //假如要是把原有内容覆盖 // FileStream fs = new FileStream("d:/hello/1.txt", FileAccess.ReadWrite); // FileStream fs = file.OpenWrite(); //string content = Console.ReadLine(); //用户输入的数据当作文本内容写入到文件 ////把字符串转换字节数组 byte[] buffer = Encoding.Default.GetBytes(content); //DriveInfo.GetDrives()获取磁盘驱动器 //fs.Write(buffer, 0, buffer.Length); ////关闭文件流 //fs.Close(); // } //读取 //FileStream fs = File.OpenRead("d:/hello/1.txt"); //byte[] buffer = new byte[fs.Length * 2]; //乘以2是为了防止中文的字节 //fs.Read(buffer, 0, 10); //fs.Close(); //string content = Encoding.Default.GetString(buffer); //Console.WriteLine(content); //操作文本文件 建议使用StreamReader StreamWriter StreamReader sr = new StreamReader("d:/hello/1.txt", Encoding.UTF8); ; string content = sr.ReadToEnd(); Console.WriteLine(content); //把d盘下的hello文件夹中的图片,读取到D盘下(可以换名称) FileStream fs= File.OpenRead("d:/hello/move.jpg"); byte[] buffer = new byte[fs.Length * 2]; //存储在buffer中 fs.Read(buffer, 0, buffer.Length); fs.Close(); //关闭文件流 //写入文件流 FileStream fs2 = new FileStream("d:/move1.jpg", FileMode.OpenOrCreate, FileAccess.Write); fs2.Write(buffer, 0, buffer.Length); fs2.Close(); //关闭文件流 //过滤C盘hello文件夹的所有图片,把后缀名位.jpg的图片复制到hello文件夹 //1、要获取C hello下盘所有文件=》Directory.GetFiles .jpg .png //3、文件操作复制 Copy CopyTo //string[] files = Directory.GetFiles("c:/hello"); //获取数组中存储所有文件的名称 // foreach (var item in files) // { // FileInfo file = new FileInfo(item); // } DirectoryInfo dirs = new DirectoryInfo("c:hello"); FileInfo[] files1 = dirs.GetFiles(); foreach (var item in files1) { if (item.Extension==".jpg") { //把文件复制到D盘中 item.CopyTo("d:/hello" + item.Name); } } } } }
Comments | 1 条评论
第一次评论